PS: se tu inibissi il "repaint" quando sposti o abbassi la finestra... questa, semplicemente, non verrebbe "ridisegnata" allo spostamento / ripristino (o meglio, non verrebbe ridisegnato il pannello con le ellissi). Quindi non vedresti affatto il pannello con le ellisi, ma un bel buco vuoto.

Supponiamo che tu sovrapponga alla tua finestra, la finestra di un altro programma... quando sposti la finestra dell'altro programma (o la chiudi), la tua finestra Java dovrebbe ridisegnarsi... altrimenti non la vedresti più sullo schermo.

Quindi, mi sa che devi rivedere un po' quelli che sono i concetti di "ridisegno".

Se il tuo "scopo" è solo quello di evitare il ridisegno delle ellissi, allora puoi impostare una variabile booleana che verrà valorizzata a "true" solo quando sarà necessario disegnarle e a false immediatamente dopo. L'intero corpo del paintComponent dovrebbe essere sottoposto alla condizione che tale variabile sia a "true". Ma attenzione: questo comporta anche il fatto che se la finestra viene ridotta a icona o sovrastata da un'altra finestra, le ellissi verranno irrimediabilmente cancellate.


Ciao.