Ciao a tutti, ho ancora bisogno di aiuto per risolvere un problema:

Ho un metodo che cambia le icone di alcune JLabel , e voglio che subito dopo averle sostituite il programma si interrompa per un certo tempo (2 secondi per ora).

Il problema è che durante l'esecuzione del programma le icone vengono sostituite dopo il tempo di interruzione.

Per ora queste 2 soluzioni provocano il risultato di cui ho detto:

codice:
Finestra.butta(cG,true);
/* Il metodo butta di Finestra aggiorna le icone delle JLabel e richiama sul pannello che le contiene
il metodo revalidate() e repaint ().Il tutto funziona ma solo dopo aver interrotto l'esecuzione con il 
comando nella riga qui sotto*/
Thread.sleep(2000);
/* Ho provato anche a sostituire il Thread.sleep sopra con:
long inizio=System.currentTimeMillis();
while((System.currentTimeMillis()-inizio)<2000);
Ma ottengo lo stesso risultato
*/
Sapreste come risolvere il problema?