1

我有一个从 xml 构建的 Jtree。

我的要求是,用户可以一次在 jtree 中选择多个节点,然后单击一个按钮,我需要获取所有选定节点的 XPath。

例如,如果 Xml 如下

Root
       |
       Parent
               |
             Child
               |
             Child

我选择了 jtree 中的两个子节点,然后单击我应该得到 [Root, Parent, Child1 ] [Root, Parent, Child2 ] 的按钮。

我尝试了两种方法来实现这一点,但都没有奏效。

在我的第一次尝试中,我使用了 tree.getSelectedPaths() 并且能够获取选定的节点,但我的问题是它给了我 [[Root, Parent, Child], [Root, Parent, Child]] 的多个节点。

我要求输出为 [Root , Parent, Child1 ] [Root, Parent, Child2 ] 这将等同于 XPath : /Root/Parent/Child1 和 /Root/Parent/Child2

在我的第二次尝试中,我还尝试对树使用 mouseListener 并使用 tree.getPathForLocation(mouseEvent.getX(), mouseEvent.getY()) 但在多选的情况下,在选择的 2 个节点中,它总是给出我是第一个被选中的节点。

请你帮我解决这个问题,即使有另一种方法来获取所选节点的 XPath,它也会有很大帮助。

提前致谢。

4

0 回答 0