2013-08-05 49 views
0

我有一個處理程序共享幾個TreeViews之間。在JavaFX 2+中,我如何從TreeItem中檢索TreeView?

在處理程序中,我有權訪問TreeItem實例,是否有一種(簡單)方法來確定它所屬的TreeView?

目前我依靠外部變量來記錄「當前活動」的TreeView,但是這會使代碼變得混亂,也可能相當脆弱。有其他選擇嗎?

回答

0

我認爲它目前是不可能的,至少在JavaFX 2.2上。查看TreeView源代碼(可用here),TreeView.setRoot(TreeItem<T> root)方法只是設置TreeView的根屬性,而不將某些引用設置回根項目上的TreeView。在這種情況下,從根元素開始,沒有參考它插入的TreeView。

因此,即使使用TreeItem.getParent()可以從更深的一個到達根項目,也不可能到達具有該項目的TreeView。

相關問題