2016-12-20 6 views
0

Ich habe ein Problem beim Hinzufügen von Knoten dynamisch zu meinem JTree.Dynamisch Knoten in einem JTree hinzufügen

Ich erhalte meine JTree Informationen über ein RestAPI im JSON Format. Die Informationen, die ich brauche, sind die Ordner-ID und der Ordner-Name.

Die folderID Struktur ist wie folgt aus:

1 
1.1 
6.8 
7.1.1.1 
1.2 
etc. 

Also muss ich meine nodelevel durch die Punkte meiner folderIDs definieren. Ich habe nach einem Code gesucht und diesen gefunden.

Dynamically add nodes in a JTree

Aber wenn ich den Code implementieren i eine Fehlermeldung erhalten: root kann nicht auf eine Variable

for(String s:list){ 
      String[] substr=s.split("\\."); 
      String parent=substr[0]; 
      for(int i=1;i<substr.length-1;i++){ 
       parent=parent+ "." + substr[i]; 
      } 
      DefaultMutableTreeNode node=null; 
      node=findparentnode(parent,**root**); 


      if(node==null) 
       **root**.add(new DefaultMutableTreeNode(s)); 
      else 
       node.add(new DefaultMutableTreeNode(s)); 

     } 

gelöst werden Könnten Sie mir eine Lösung für mein Problem finde ich Hilfe?

Antwort

0

Sie haben die Wurzel definieren zuerst:

DefaultMutableTreeNode rootNode = new DefaultMutableTreeNode("root") 
JTree tree = new JTree(rootNode); 

Dann können Sie Knoten zum JTree hinzuzufügen starten, indem Sie Knoten zu dem Wurzelknoten hinzugefügt wird.

+0

weiter * * root * * enthält den Operator * und kompiliert nicht – JEY

+0

ich habe es hinzugefügt, aber ich bekomme einen anderen Fehler: Kann keine statische Referenz auf die nicht statische Methode findparentnode (String, DefaultMutableTreeNode) vom Typ Main – Boki

+0

node = ** findparentnode ** (Eltern, Wurzel); – Boki

Verwandte Themen