Um eine JTree und Einfügen neue Knoten, die durch nur zu wissen, String Pfad zu erstellen, schrieb ich die folgenden Zeilen:Wie erstellt man einen Knoten mit der Zeichenfolge JTree?
private JFrame frame;
JTree tree;
DefaultMutableTreeNode root;
DefaultTreeModel model;
public static void main(String[] args)
{
test t = new test();
t.add_new_folder("Data","trial 0");
t.add_new_folder("Data/trial 0","trial 1");
t.frame.revalidate();
t.frame.repaint();
}
public test()
{
frame = new JFrame();
tree = new JTree();
root = new DefaultMutableTreeNode("Data");
model = new DefaultTreeModel(root);
tree.setModel(model);
frame.getContentPane().add(tree, BorderLayout.WEST);
frame.setVisible(true);
frame.setSize(500, 500);
}
bis hier alles sieht gut aus und funktioniert, aber wenn dieses Verfahren es das nicht aufgerufen wird, nicht tun erwarteten Ergebnisse
public void add_new_folder(String path,String name){
String[] data = path.split("/");
TreePath t = new TreePath(data);
DefaultMutableTreeNode parent = new DefaultMutableTreeNode(t);
model.insertNodeInto(new DefaultMutableTreeNode(name), parent, parent.getChildCount());
model.reload();
}
und das ist, was ich
bekommenWie repariert man es dann?
schön :) ..eine Idee, warum meins nicht funktioniert? danke –
Weil du deine Knoten nicht in die Wurzel eingefügt hast –