Nel codice che hai postato non ho visto nessun cambiamento di immagine: imgCorr rimane sempre lo stesso e non viene mai toccato.
Poi hai inserito un Thread.sleep() all'interno del metodo paint: se tu devi cambiare l'immagine dopo un certo intervallo, questo metodo andrà richiamato fuori, in modo da richiamare il metodo repaint() in due momenti successivi e non all'interno del metodo paint(). Cosa significa chiamare il Thread.sleep() all'interno di paint()? Significa solamente che il lavoro di paint() (che è il metodo che ridisegna il componente) attende 5 secondi (nel tuo caso) per terminare il suo lavoro... inutile, no?
Ciao.![]()