静态过滤JTree /多个Jtree共享(模型的相关部分)

时间:2015-06-05 11:10:51

标签: java swing jtree defaulttreemodel

我有一个Jtree有两个顶级孩子说 A B 。目前,代码旨在显示在同一面板中,因为它们是共享JTree的一部分。我想要做的是,将A和Binto分成两个不同的面板。

现在,Jtree有一个复杂的更新系统,有A成员自动进入B的方式,反之亦然等等,我真的不想有两个单独的JTree。我知道我可以使用以下方式访问相关数据:

myTree.getModel().getChild(myTree.getModel().getRoot(),i)

但有没有办法在一个面板中显示 A 及其子子节点,在另一个面板中显示B?

如果不是,我想我将不得不求助于创建 myTree_A myTree_B 来跟踪 myTree 。这样做的最有效和最有效的方法是什么?

更新

所以我选择创建两个单独的树。然而,当我&root'A.add(A)'和' root_B.add(B)'在我的两棵新树中, root_A root_B 分别是 myTreeA myTreeB 的根, A和B与 myTree 的根目录分离,我无法再将 myTreeA,B 的元素挂钩到原始的 myTree 并调用相关的例程。是否可以告诉 myTreeA myTreeB 跟踪A和B而不删除其父级?换句话说,我可以在树之间共享模型/节点吗?

1 个答案:

答案 0 :(得分:0)

最好的方法是创建两个独立的树,以便模型附加到A和B可以轻松更新和反映。