如果我有一个String[]
,例如{ "root", "two", "1" }
如何从我的JTree
中获取由此"路径"表示的DefaultMutableTreeNode
?
例如,如果我的 JTree 看起来像这样:
root
one
1
2
two
1 <-- I want this node
2
假设所有节点都DefaultMutableTreeNode
s。
首先,您需要使用getModel()
方法获取树模型。有了模型后,它就有了getRoot()
方法,用于获取树的根。之后,您可以继续调用getChild(Object parent, int index)
并检查是否有任何子项与 String 数组中提供的名称相同。如果找到这样的,可以再次拨打getChild(Object parent, int index)
等...直到您到达数组中的最后一个字符串。然后,您就有了相应的树节点。您需要实际将树节点转换为 DefaultMutableTreeNode,因为 TreeModel 使用 Object 作为树元素(对于 1.7 之前的 Java)。