带有表单生成器的 JTree

New*_*ger 4 java swing jtree removeall defaulttreemodel

我用默认的 NetBeans 编辑器创建了一个表单并jTree在上面放了一个。然后它以某种方式在其中创建了一堆元素,例如“颜色”、“运动”、“食物”。但它不在创建代码中。它来自哪里,我该如何编辑它...

即使我做了jTree1.removeAll();所有事情仍然存在......并且没有我的代码来向jTree工作添加新项目。

private void test(java.awt.event.MouseEvent evt) {
    //trying to remove all, but it does not remove anything
    jTree1.removeAll();

    //it does print it in debug meaning that this function is called
    System.out.println("qwe");

    //create the root node
    DefaultMutableTreeNode root = new DefaultMutableTreeNode("Root");
    //create the child nodes
    DefaultMutableTreeNode child1 = new DefaultMutableTreeNode("Child 1");
    DefaultMutableTreeNode child2 = new DefaultMutableTreeNode("Child 2");

    //add the child nodes to the root node
    root.add(child1);
    root.add(child2);

    //now how do I add it to the tree?
    //???
}
Run Code Online (Sandbox Code Playgroud)

我需要能够jTree在运行时编辑内容。

ale*_*410 5

接下来的问题是您创建JTree这样的JTree tree = new JTree()(根据docs)它具有示例节点。创建节点(root,child1,child2)后添加下一行,一切都会正常工作:

DefaultTreeModel model =(DefaultTreeModel) jTree1.getModel();
model.setRoot(root);
Run Code Online (Sandbox Code Playgroud)

你也不必称jTree1.removeAll();它用于其他目的。(文档

阅读教程 JTree