Bonjour,
Après plusieur recherche je ne comprend toujours pas comment faire un copier coller dans un JTree composé de TreeNode qui hérite de la classe DefaultMutableTreeNode.
Pouvez vous me mettre sur la voie?
Cordialement
Bonjour,
Après plusieur recherche je ne comprend toujours pas comment faire un copier coller dans un JTree composé de TreeNode qui hérite de la classe DefaultMutableTreeNode.
Pouvez vous me mettre sur la voie?
Cordialement
Copier/Coller depuis quoi? Vers quoi?
Un topic qui correspond à ton problème: http://www.developpez.net/forums/d36...ut-copy-paste/
Merci pour cette réponse, je reviens vers vous si jamais j'ai d'autre problème lié à ce sujet.
Je suis encore ouvert à toute autre explication, je baliserais en [résolu] quand tout fonctionne.
Pour info c'est un copier coller d'un TreeNode vers le même JTree.
(TreeNode = classe dérivé de DefaultMutableTreeNode)
Cordialement.
J'ai trouvé une solution, En fait ce que je veux surtout c'est récupérer Un Element JDom attribué a chaque TreeNode, j'ai donc fait comme ceci:
Exist-il une solution plus propre?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43 public void copynode(){ TreePath path; if((path = this.getSelectionPath()) != null){ Element elm; TreeNode node; node = (TreeNode)path.getLastPathComponent(); elm = node.nodeElement; copyelem = dom.cloneElement(elm); System.out.println(copyelem.getName()); } else{ copyelem = null; } } public void pastenode(){ Element elm, parent; TreePath path; TreeNode node; if((elm = copyelem) != null){ if((path = this.getSelectionPath()) != null){ elm = copyelem; node = (TreeNode)path.getLastPathComponent(); parent = node.nodeElement; if(dom.AddElement(elm, parent, 0) == true && parent != null){ node = new TreeNode(elm, getUniqueid(elm.getName())); copyelem = dom.cloneElement(elm); this.expandPath(path); LoadDomtoTree(elm, node); dtm.insertNodeInto(node, (TreeNode)path.getLastPathComponent(), 0); } } } }
Cordialement.
Partager