Ho guardato il tuo codice (PS: usa i tag [CODE*][/CODE*] per il codice, così risulta più leggibile). Devi stare attento: se tu poni a null l'oggetto imgCorr non puoi richiamare il metodo repaint(). O meglio, dovresti inserire un controllo all'interno di questo metodo in modo da non disegnare se l'oggetto è null, altrimenti otterrai un bel NullPointerException.
Mi sembra che tu, nel tuo codice, abbia visualizzato per 2 volte (a distanza di 5 secondi l'una dall'altra) la stessa immagine.
Poi, sposta il refresh delle immagini all'interno del metodo run() e non nel metodo init(). Quest'ultimo, infatti, serve a inizializzare l'applet ed essa risulterà visibile solamente quando questo metodo termina.
Concludendo, prova così:
codice:
public class immagine extends Applet {
Image imgCorr;
public void init() {
imgCorr=getImage(getDocumentBase(),"images/webcam.jpg");
repaint();
}
public void run() {
try {
Thread.sleep(5000);
} catch(InterruptedException e) {
System.out.println(e);
}
imgCorr=getImage(getDocumentBase(),"images/altraImmagine.jpg");
repaint();
}
public void paint(Graphics g) {
if (imgCorr != null) {
g.drawImage(imgCorr,0,0,this);
}
}
}
Ciao.