[kava] Probleme avec un JTree

Probleme avec un JTree [kava] - Java - Programmation

Marsh Posté le 29-05-2002 à 15:42:24    

salut a vous, voila je voudrais utiliser un jtree, et mettre des racines et des noeuds lors d un clique sur un bouton : en fait lors du clique je voudrais soit inserer unnouveau noeud, soit une nouvelle racine.
j ai essaye avec un hashtable
         lors du clique je fais hashtable.put(nouveaudossier);
          ->aucun resultat visible
Avec un vecteur -> pareil  
 
et un defaultmutabletreemodel -> pareil...
 
deja est ce possible d implementer un jtree comme une jtable ou une jlist ??
 
titi

Reply

Marsh Posté le 29-05-2002 à 15:42:24   

Reply

Marsh Posté le 29-05-2002 à 15:43:09    

c un nouvo langage Kava? ?


---------------
All we need is a soul revolution
Reply

Marsh Posté le 29-05-2002 à 15:43:33    

kayasax a écrit a écrit :

c un nouvo langage Kava? ?  




 
 
arf grillaid....


---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
Reply

Marsh Posté le 29-05-2002 à 15:44:16    

non c une faute de frappe
ca veut dire java [:)]

Reply

Marsh Posté le 29-05-2002 à 15:45:02    

Yaisssss j'lai pas loupe cuila !
Dsl titi conais pas le java  :(  
 

Sh@rdar a écrit a écrit :

 
 
 
arf grillaid....  



 

[jfdsdjhfuetppo]--Message édité par kayasax le 29-05-2002 à 15:45:14--[/jfdsdjhfuetppo]


---------------
All we need is a soul revolution
Reply

Marsh Posté le 29-05-2002 à 15:48:55    

Quand tu modifies un modèle (ta hashtable, ou ton defaultmutabletreemodel), généralement, la vue (le JTree) n'est pas mis au courant : il faut le prévenir..C'est pour ça que les interfaces de modèles ont souvent des méthodes XXXXchanged() qui servent à mettre au courant la vue qu'elle doit se réactualiser....Donc, il faut que tu trouves quelle est cette méthode dans ton cas précis, et que tu l'appelles après ta modif.

Reply

Marsh Posté le 29-05-2002 à 15:51:07    

ok je regarde si je trouve le truc
merci

Reply

Marsh Posté le 29-05-2002 à 16:01:55    

bah desole mais je ne trouve pas
j ai essayé les fire...changed  
et autre ..changed tjs pas de changement...
pourtant quand je fait ca avec les jlist ca marche automatiquement??
c pour ca je me demande si c vraiment possible de faire ca ??
 
;-}

Reply

Marsh Posté le 29-05-2002 à 18:08:55    

essais un invalidate() sur ton JTree.
 
Tu as bien modifié le modèle?

Reply

Marsh Posté le 29-05-2002 à 18:11:15    

merci c bon

Reply

Marsh Posté le 29-05-2002 à 18:11:15   

Reply

Marsh Posté le 29-05-2002 à 18:13:22    

maintenant j utilise un defaulttreemodel
et je fais des insertnodeinto(...)
 
le probleme maintenant est que j ai du mal a creer des noeuds ou je veux...
 
comment faire ??

Reply

Marsh Posté le 29-05-2002 à 18:21:01    

titi76 a écrit a écrit :

maintenant j utilise un defaulttreemodel
et je fais des insertnodeinto(...)
 
le probleme maintenant est que j ai du mal a creer des noeuds ou je veux...
 
comment faire ??  




 
Moi je te conseille la reecriture d'un tree model.
Comme ça tu maitrise la structure de donnée.
Tu peux l'heriter de DefaultTreeModel par exemple.

Reply

Marsh Posté le 30-05-2002 à 10:31:44    

oui ok mais comment on fait ca ???
as tu un site qui pourrait me guider ds la demarche a suivre  
pleaseeeeeeeeeee
 
 
;|}

Reply

Marsh Posté le 30-05-2002 à 10:37:21    

therier a écrit a écrit :

 
 
Moi je te conseille la reecriture d'un tree model.
Comme ça tu maitrise la structure de donnée.
Tu peux l'heriter de DefaultTreeModel par exemple.  




 
Bah, l'hériter d'un DefaultTreeModel, franchement, je vois pas l'intérêt, il maîtrisera pas plus la structure de données, puisque le DefaultTreeModel est déjà une implémentation!!
 
Nan, il suffit d'écrire une classe qui implémente l'interface TreeModel :  
 
Imagine que tu as une structure de données...Tu veux la repréesnetr dans un JTree : Il faut que ta classe implémente les méthodes de l'interface TreeModel :
 

Citation :


 void addTreeModelListener(TreeModelListener l)
          Adds a listener for the TreeModelEvent posted after the tree changes.  
 
Object getChild(Object parent, int index)
          Returns the child of parent at index index in the parent's child array.  
 
int getChildCount(Object parent)
          Returns the number of children of parent.  
 
int getIndexOfChild(Object parent, Object child)
          Returns the index of child in parent.  
 
Object getRoot()
          Returns the root of the tree.  
 
boolean isLeaf(Object node)
          Returns true if node is a leaf.  
 
void removeTreeModelListener(TreeModelListener l)
          Removes a listener previously added with addTreeModelListener.  
 
void valueForPathChanged(TreePath path, Object newValue)  
 


 
Pour chaque méthode, tu lis la doc, et tu t'arranges pour que le comportement de ces méthodes soit celui que tu attends, c'est tout....Et donc, si tu as tout bien conçu, en faisant new JTree(maclassequiimplémenteTreeModel)
ben ton JTree représentera la structure de données comme tu le voulais..

 

[jfdsdjhfuetppo]--Message édité par gfive le 30-05-2002 à 10:38:14--[/jfdsdjhfuetppo]

Reply

Marsh Posté le 30-05-2002 à 10:40:30    

bruno5678 a écrit a écrit :

oui ok mais comment on fait ca ???
as tu un site qui pourrait me guider ds la demarche a suivre  
pleaseeeeeeeeeee
 
 
;|}  




 
et après on voudrait me faire croire que titi76 n'est pas un multinick de Bruno5678
 
....
 
mouahahahaha


---------------
Just because you feel good does not make you right
Reply

Marsh Posté le 30-05-2002 à 10:46:48    

bruno5678 a écrit a écrit :

oui ok mais comment on fait ca ???
as tu un site qui pourrait me guider ds la demarche a suivre  
pleaseeeeeeeeeee;|}  




Le principe c'est que tu sépares les données composnt ton arbre et la façon dont elles sont affichées. Pour cela, tu dois fournir un TreeModel qui représente les données de ton arbre.
Il faut donc que tu écrive un Objet qui implémente TreeModel. Pour facilité le boulot, il existe un objet qui fait le gros dont tu peut hériter : DefaultTreeModel
 
tu n'as plus qu'à surcharger certaines méthodes pour en afire ce que tu veux.
 
Bon, maintenant, ca s'était la théorie, en pratqieu jeles ai jamais utilisé, mais ca fonctionne pareil que les ListModel que j'ai déjà utilisé


---------------
ma vie, mon oeuvre - HomePlayer
Reply

Marsh Posté le 30-05-2002 à 10:51:35    

c'est vrai qu'àpres lecture de la doc, ca a l'air plus simple de directement implémenter le TreeModel, sans hériter de DefaulTreeModel ...


---------------
ma vie, mon oeuvre - HomePlayer
Reply

Marsh Posté le 30-05-2002 à 11:10:19    

darklord, arretes un peu .
Comment faut il te le dire ?????
 
TOI ETRE SUR FORUM POUR ENTRE AIDE.
SI TOI PAS VOULOIR AIDER.
TOI PAS AIDER.
MAIS TOI PAS CHERCHER LA MERDE.
CAR TOI PAS REPONDRE A QUESTION POSEE.
EN PLUS TOI FAIRE PERDRE DU TEMPS AUX AUTRES.
 
j espere que tu ne m en veux pas mais la T LOURD.
donc si jamais tu vois mon login, la prochaine fois ecris moi pour me donner un coup de main sinon ca ne m interresse pas.
 
titi
 
ps : et non je ne suis toulours pas un multinick de bruno5678
 
pourkoi titi parceque ma femme a un gros minet ;-}

Reply

Marsh Posté le 30-05-2002 à 11:11:42    

ouais c'est ca :D


---------------
Just because you feel good does not make you right
Reply

Marsh Posté le 30-05-2002 à 11:16:47    

ok c bon j ai reussi merci a vous  
;-}

Reply

Marsh Posté le 30-05-2002 à 11:21:25    

titi76 a écrit a écrit :

ok c bon j ai reussi merci a vous  
;-}  




 
Et bruno5678, il dit pas merci?? !?! Pourtant, c'est à lui que j'ai répondu, moi! :D
 
(pis à mon sens, vu la taille d'une bite de canari, si ta femme à un grand minet, faut sérieusement te poser des questions, mais bon :D:D:D (scuse, j'ai ENCORE la connerie aujourd'hui!))

 

[jfdsdjhfuetppo]--Message édité par gfive le 30-05-2002 à 11:22:11--[/jfdsdjhfuetppo]

Reply

Marsh Posté le 30-05-2002 à 11:25:43    

gfive >>> lol


---------------
Just because you feel good does not make you right
Reply

Marsh Posté le 30-05-2002 à 11:26:55    

titi76 a écrit a écrit :

pourkoi titi parceque ma femme a un gros minet ;-}  




 
ouais mais ça on veut pas le savoir !!!  :heink:  :(  :beurk:

Reply

Marsh Posté le 30-05-2002 à 13:06:52    

gfive a écrit a écrit :

 
Et bruno5678, il dit pas merci?? !?! Pourtant, c'est à lui que j'ai répondu, moi! :D



:lol: mdr !

 

[jfdsdjhfuetppo]--Message édité par benou le 30-05-2002 à 13:07:01--[/jfdsdjhfuetppo]


---------------
ma vie, mon oeuvre - HomePlayer
Reply

Marsh Posté le 31-05-2002 à 14:26:21    

merci a toi benou ;-}

Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed