4

我用默认的 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?
    //???
}

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

4

2 回答 2

5

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

DefaultTreeModel model =(DefaultTreeModel) jTree1.getModel();
model.setRoot(root);

此外,您不必称jTree1.removeAll();它用于其他目的。(文档

阅读教程JTree

于 2013-11-14T13:17:07.867 回答
0

在自定义 GUI 初始化程序 createUIComponents() 方法中初始化您的 JTree。

要为某个组件创建自定义 GUI 初始化程序源代码,请遵循以下一般过程:

  1. 选择所需的组件。

  2. 在 Inspector 中,选中 Custom Create 选项。

  3. 在文本编辑器中,找到方法 createUIComponents(),然后键入所需的源代码。此方法中的代码在编译时不会被删除。

完整解释: https ://www.jetbrains.com/help/idea/creating-form-initialization-code.html

于 2020-07-07T13:13:49.473 回答