在一个 JavaFx 2 案例中,我有一个 TreeView,它最初在某个深度折叠。我的目标是当用户单击扩展一个节点时,将发生一个操作来修改该树项属性/值。
问题是我不确定如何引用该树项。我在每个 treeitem expanedProperty 上添加了一个监听器,但是在那个 ChangeListner 方法中,我只能获取旧/新值,无法返回到更改事件发起的 treeitem。
有人可以帮忙吗?非常感谢。
最佳答案
是的当然。尝试这个:
treeItem.expandedProperty().addListener(new ChangeListener<Boolean>() {
@Override
public void changed(ObservableValue<? extends Boolean> observable, Boolean oldValue, Boolean newValue) {
System.out.println("newValue = " + newValue);
BooleanProperty bb = (BooleanProperty) observable;
System.out.println("bb.getBean() = " + bb.getBean());
TreeItem t = (TreeItem) bb.getBean();
// Do whatever with t
}
});
关于treeview - 如何获取当前在 JavaFx 2 中通过用户单击扩展的 TreeItem 引用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14236666/