读书人

javafx2.0 监听树跟表的选择变化

发布时间: 2012-09-20 09:36:50 作者: rapoo

javafx2.0 监听树和表的选择变化

Swing中的组件都有对应的选择模型(SelectionModel)和一些对应的方法(形如:add/remove SelectionChangedListener)来监听组件选择的变化, 如JTree中有TreeSelectionModel和addTreeSelectionListener /removeTreeSelectionListener.?

?

JavaFx也有同样的选择模型,可以通过改模型来监听选择的变化.下面是两个监听选择变化的示例(以TreeView为例, 其它组件(List Table等)同样可以使用这些方法):


方法一:

?

tree.getSelectionModel().selectedItemProperty().addListener(new ChangeListener() {//tree.getSelectionModel().selectedIndexProperty().addListener(new ChangeListener() {@Overridepublic void changed(ObservableValue observable,Object oldValue, Object newValue) {system.out.println("selection change");}});
?



方法二:

也通过监听javafx组件的FocusModel(焦点模型)来获取组件选择的变化的通知.


下面是一个示例:

?

?

treegetFocusModel().focusedItemProperty().addListener(new ChangeListener<TreeItem>() {@Overridepublic void changed(ObservableValue<? extends TreeItem> observable,TreeItem oldValue, TreeItem newValue) {        system.out.println("tree selection changed");}});

读书人网 >编程

热点推荐