use*_*643 0 java arrays string swing jtree
如果我有String[]这样一个{ "root", "two", "1" }如何DefaultMutableTreeNode从JTree这个"路径"代表我的那个?
例如,如果我的JTree看起来像这样:
root
one
1
2
two
1 <-- I want this node
2
Run Code Online (Sandbox Code Playgroud)
假设所有节点都是DefaultMutableTreeNodes.
首先,您需要使用getModel()方法获取树模型.一旦你有了模型,它就有了getRoot()获取树根的方法.之后,您可以跟随调用getChild(Object parent, int index)并检查是否有任何子项与String数组中提供的名称相同.如果找到这样的,你可以再次调用getChild(Object parent, int index),等等......直到你到达阵列中的最后一个String.然后你有相应的树节点.您需要实际将树节点强制转换为DefaultMutableTreeNode,因为TreeModel使用Object作为树元素(对于1.7之前的Java).