Originariamente inviato da dom.vecchioni
se invece attivo il metodo paint mi appare tutto normale...mi sapete spiegare dove sta l'intoppo?
Nessun intoppo ... è sempre la solita storia di capire come va gestito il painting nelle interfacce utente gestite ad "eventi".

Quello che hai fatto nel costruttore è un disegno "al volo", prendi il Graphics e disegni. Ma non può essere persistente! Nelle interfacce utente gestite ad "eventi" come AWT/Swing, non sei tu che decidi sempre quando disegnare. Non sei tu il "padrone" della interfaccia utente. È il sistema che lo decide, cioè ti viene segnalato: "ehi componente ... ora devi disegnarti!". E tu devi disegnare. Punto.

Quel "segnale" è appunto la invocazione di un metodo apposito. paint() per i frame mentre è paintComponent() per i JComponent.