【发布时间】:2016-06-22 08:53:18
【问题描述】:
为了通过只知道字符串路径来创建 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);
}
到这里为止,一切看起来都很好并且正在运行,但是当调用此方法时,它并没有达到预期的结果
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();
}
这就是我得到的
那怎么解决呢?
【问题讨论】:
标签: java arrays eclipse swing jtree