0

我有一个在几个 TreeViews 之间共享的处理程序。

在处理程序中,我可以访问 TreeItem 实例,是否有(简单)方法来确定它所属的 TreeView?

目前,我依靠外部变量来记录“当前活动的”TreeView,但这会使代码变得混乱,而且可能也相当脆弱。有替代方案吗?

4

1 回答 1

0

我认为目前不可能,至少在 JavaFX 2.2 上是不可能的。查看 TreeView 源代码(可在此处获得),该TreeView.setRoot(TreeItem<T> root)方法只是设置 TreeView 的根属性,而没有在根项上设置一些对 TreeView 的引用。在这种情况下,从根元素开始,没有对插入它的 TreeView 的引用。

因此,即使使用 可以从更深的项目到达根项目TreeItem.getParent(),也无法到达具有该项目的 TreeView。

于 2013-08-08T00:45:54.013 回答