2012-03-24 2 views
2

Ich arbeite an einem Projekt, wo ich eine Reihe von Ordnern mit Struktur und Namen ähnlich der von JTree erstellen möchte, die ich erstellt habe.Wie Pfad zu einem Knoten in JTree speichern?

zu vereinfachen:

Wenn A ist der Wurzelknoten und B und C sind die Kinder, im Backend, Ordner mit dem Namen „A“ an der Stelle geschaffen ist „C: \ Benutzer \ Samt \ Desktop“ Als nächstes werden sowohl B als auch C unter "C: \ Benutzer \ Sami \ Desktop \ A"

erstellt. Ich vermute, dass wenn ich durch jeden Knoten traversiere und ihren individuellen TreePath erhalte, würde es die Dinge einfacher machen.

Gibt es eine andere Alternative, für die ich gehen kann ?. Wenn nicht wie und wo speichere ich den Pfad zu einem bestimmten Knoten?

Bitte Hilfe.

Antwort

0

Der folgende Code ist ein SSCCE (kurzes selbstständiges korrektes Beispiel). Es durchquert alle Knoten in der Baumstruktur und erhält den Pfad als String. Von dort können Sie die Strings für Ihren Zweck analysieren.

import java.util.Enumeration; 
import javax.swing.JTree; 
import javax.swing.tree.DefaultMutableTreeNode; 
import javax.swing.tree.TreePath; 

public class StoreTreePathExample { 
    public static void main(String[] args){  
    JTree tree = new JTree(); 
    Enumeration en = ((DefaultMutableTreeNode)tree.getModel().getRoot()).preorderEnumeration(); 
     while(en.hasMoreElements()){ 
     TreePath path = new TreePath(((DefaultMutableTreeNode)en.nextElement()).getPath()); 
     String text = path.toString(); 
     System.out.println(text); 
     } 
    } 
} 
+0

Erbsenzählerei: das ist _keine_ [SSCCE] (http://sscce.org/), bitte schauen was _self contained_ bedeutet – kleopatra

+0

opps der rechten Seite, krank bearbeiten – neokyle

Verwandte Themen