我有一个带有两个顶级孩子的 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?换句话说,我可以在树之间共享模型/节点吗?