Il JFrame principale dell'applicazione contiene un JPanel con BorderLayout. A sinistra c'è un JTree, al centro c'è uno JScrollPane. Ogni volta che premo un nodo sul JTree la view dello JScrollPane viene cambiata, dandogli un MyPanel. Questi MyPanel contengono JTextField, JComboBox e JTextPane e vengono inizializzati con i dati di un DB.
Quando modifico i controlli, una variabile booleana mi diventa true.
Avevo pensato di aggiungere al MyPanel un ComponentListener per far si che quando io clicco sull'albero, il vecchio MyPanel "sentisse" che non è più visibile e mi desse l'opportunità di chiedere se salvare i dati modificati prima di cambiare vista.
Solo che l'unico evento che mi intercetta è il resized, mentre gli altri no.
Dove sbaglio?
C'è qualche altro metodo per intercettare quando un JPanel sta per essere cambiato in una JScrollPane da un altro? Io preferirei fare tutto nella classe del MyPanel se possibile.

al volante son nervoso
Rispondi quotando