JTree:选择叶子时返回分支

时间:2015-12-11 00:22:25

标签: jtree

我是JTrees的新手,有一个简单的问题。如果我选择一个叶子,我可以使用

返回所选的行号
int row = getRowForPath(getSelectionPath());

有没有办法返回我的叶落下的分支的路径/行?也就是说,如果我有以下树:

    • 水果
      • 苹果
      • 香蕉
    • 蔬菜
      • 莴苣
      • 胡萝卜

我选择“Apple”,然后我得到“Fruit”的行号?

1 个答案:

答案 0 :(得分:1)

getSelectionPath()返回的结果调用getParentPath()

tree.getSelectionPath().getParentPath()

因为getPath()“返回此TreePath元素的有序数组,”结果数组的倒数第二个元素是父元素。你可以在这个完整的example中看到效果; TreeSelectionListener更新JTextField,如下所示。

enter image description here