Bonjour storm_2000
Le souci avec ta modélisation c'est que tu vas devoir implémenter autant de fois les fonctions de navigation de ton arbre (itérateur,parent,...) qu'il y a de types de données associés (deux types de données dans ton exemple).
Java possède déjà des classes qui modélisent une structure arborescente similaire. Tu peux t'en inspirer ou les utiliser directement.
Tutorial JAVA:
http://java.sun.com/docs/books/tutor...ents/tree.html
DefautlMutableTreeNode- - ->MutableTreeNode- - ->TreeNode
Pour associer un objet à ce type de noeud:
1 2 3
| DefaultMutableTreeNode noeud=new DefaultMutableTreeNode("label de ce noeud");
noeud.setUserObject(monObjetAssocié);
noeudParent.add(noeud); |
DefaultTreeModel- - ->TreeModel
La racine de ton arbre sert ensuite à créer LE modèle arborescent complet.
TreeModel monArbre=new DefaultTreeModel(maRacine);
L'interface TreeModelListener
Doit être implémenté pour chaque objet qui écoute les changements de ton arbre; et chaque TreeModelListener qui écoute ton arbre doit être enregistré:
monArbre.addTreeModelListener(monObjetQuiEcoute);
Ce modèle est directement visualisable en swing avec JTree
Partager