Adesso l'unica cosa di diverso è che pnlsensoreMouseEntered completa praticamente immediatamente. Imposti la immagine RossoAcceso.png e poi invokeLater va a "parcheggiare" il Runnable nella coda degli eventi (il run() non viene eseguito subito!), quindi pnlsensoreMouseEntered termina subito e il controllo viene restituito al framework, che tra le prime cose che fa sicuramente va ad aggiornare la label della icona a video. Quindi solo in un secondo momento leggermente più avanti, viene eseguito il run() del tuo Runnable. Ma qui sta di fatto che tieni comunque "impegnato" il EDT per un tempo potenzialmente lungo. Ed è questo che, ti ripeto ancora una volta, non andrebbe bene (nulla di grave in sé ma la tua interfaccia utente è "congelata" in questo frangente di tempo).
Per risolvere dovresti usare un thread apposito (con tutte le attenzioni che questo comporta).


Rispondi quotando
