Partiamo da una premessa: quando si usa JTree ci sono almeno 2 elementi in gioco: il JTree ovviamente e il model (implementazione di TreeModel). Se il model è nel caso specifico un DefaultTreeModel, allora ci sono in gioco anche dei nodi specifici (implementazione di TreeNode).Originariamente inviato da VincenzoTheBest
non capisco perchè gli oggetti non vengono visualizzati nel JTree!
La logica che ho seguito per l'aggiunzione dei nodi è la seguente (è la stessa dell'esempio su java.sun)
In generale, è il model che "sa" come gestire la struttura dati e come notificare le modifiche ai listener.
Se si modifica direttamente un nodo settando il suo valore, aggiungendo/rimuovendo figli, ecc... il model non ne "sa" nulla ....
Quindi, tornando alla tua questione, il punto è: quando è che fai quel nodo.add()??? Se lo fai nella inizializzazione prima di visualizzare il tutto non ci dovrebbero essere problemi. Se lo fai successivamente a seguito di un qualche evento, allora non basta cambiare qualcosa sul nodo ... deve "saperlo" anche il model!

Rispondi quotando