繁体   English   中英

JTree选择

[英]JTree selection

我有一个 JTree,它有 5 级深,0、1、2、3、4 级。 我对级别 1 的信息、值或索引感兴趣。 是否可以在选择低于 1 级时立即获得 1 级信息?

如果您对所选的 1 级节点感兴趣,请使用该方法

JTree.getSelectionPath() 

要获取选定的 TreePath,然后检查返回的 TreePath 是否至少有 2 个元素(第一个是根,第二个是选定的 1 级节点)

TreePath.getPathCount()

 If the return>= 2 then use 

TreePath.getPathComponent(1) 

to get the selected level 1 node. (0 index is the root)

如果您的 1 级节点是静态的,您可以在树类中保留对它们的引用。 这将为您提供一种直接访问这些节点的方法,并且假设您已经使用了派生类信息,那么您将获得派生类信息。

还有DefaultTreeModel.getChild(...)可以让您通过根节点下的索引获取节点。

如果您试图将树“上升”到第 1 级节点,则可以在树模型上尝试getPathToRoot 1 级节点(就在根之下)将是result[1]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM