Java 允许用户将节点添加到JTree中,如果父级已展开,则不会显示节点
我在JTree中插入节点时遇到问题。基本上,用户在父节点上单击鼠标右键,显示可能要插入的子节点列表。它们选择一个节点,然后将其作为选定节点的子节点插入。当父节点从未展开时,这一切都非常有效。但是,如果用户试图插入的节点的父节点曾经被扩展过,则UI似乎不会相应地更新 以下是相关代码行: 创建JTree:Java 允许用户将节点添加到JTree中,如果父级已展开,则不会显示节点,java,user-interface,swing,tree,Java,User Interface,Swing,Tree,我在JTree中插入节点时遇到问题。基本上,用户在父节点上单击鼠标右键,显示可能要插入的子节点列表。它们选择一个节点,然后将其作为选定节点的子节点插入。当父节点从未展开时,这一切都非常有效。但是,如果用户试图插入的节点的父节点曾经被扩展过,则UI似乎不会相应地更新 以下是相关代码行: 创建JTree:this.tree=newjtree(ctlr.getRulesTableTreeModel().getModel()) getModel()方法返回一个DefaultTreeModel,用于为原始
this.tree=newjtree(ctlr.getRulesTableTreeModel().getModel())代码>
getModel()方法返回一个DefaultTreeModel,用于为原始树层次结构建模
插入节点:this.treeModel.insertNodeInto(子节点、父节点、索引)代码>
很抱歉没有提供更多代码,但此项目大约有3000行,我正在尝试选择相关行。您需要更新模型:
根据默认树模型api:
添加节点后,需要
告诉模型已添加节点;这将告诉用户界面正确刷新
例如:
nodesWereInserted(TreeNode node, int[] childIndices)
Invoke this method after you've inserted some TreeNodes into node.p