如何获取jtree中根节点的所有子节点?

Posted

技术标签:

【中文标题】如何获取jtree中根节点的所有子节点?【英文标题】:How to get all childs of root node in jtree? 【发布时间】:2012-07-13 07:27:17 【问题描述】:

我想获取根节点的所有子节点。

例如:

Root
   child1
      child1.child1
   child2
      child2.child1

现在我想得到两个子节点,分别叫做“child1”和“child2”。

如何做到这一点?有没有可能?

请帮助我,在此先感谢..

【问题讨论】:

【参考方案1】:

获取树的根:

 tree.getModel().getRoot();

然后得到这个根节点的子节点个数:

 tree.getModel().getChildCount(rootNode)

然后从0到孩子的数量并调用

tree.getModel().getChild(rootNode, i)

获取根节点的子节点。

【讨论】:

谢谢我得到了答案。请告诉我如何删除该根节点的所有子节点。 你忘记了第二个参数:-) 但这不会检查 children 中的 children 吗?【参考方案2】:

如果你的元素实现了TreeNode 接口,你可以使用可用的方法:

TreeNode#children TreeNode#getChildAt TreeNode#getChildCount

否则,您可以直接查询TreeModel。见

TreeModel#getRoot TreeModel#getChild

方法

【讨论】:

以上是关于如何获取jtree中根节点的所有子节点?的主要内容,如果未能解决你的问题,请参考以下文章

java中jtree双击叶节点如何获取该文件所在的路径

java组件JTree问题,怎么给树的子节点注册鼠标双击监听

如何获取选定的行,包括 JTree 的子行

如何遍历JTree的每一个节点

在sqlserver中实现树形结构中根、子节点数据的添加、修改

flutter firebase 如何获取节点的所有子节点