1. editTab.getSelectionModel().selectedIndexProperty().addListener(evnt);

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

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

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

方法一:

  1. tree.getSelectionModel().selectedItemProperty().addListener(new ChangeListener() {
  2. //tree.getSelectionModel().selectedIndexProperty().addListener(new ChangeListener() {
  3. @Override
  4. public void changed(ObservableValue observable,Object oldValue, Object newValue) {
  5. system.out.println("selection change");
  6. }
  7. });

  

方法二:

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

下面是一个示例:

  1. treegetFocusModel().focusedItemProperty().addListener(new ChangeListener<TreeItem>() {
  2. @Override
  3. public void changed(
  4. ObservableValue<? extends TreeItem> observable,
  5. TreeItem oldValue, TreeItem newValue) {
  6. system.out.println("tree selection changed");
  7. }
  8. });

  

javafx 监听选择变化(TabPane)的更多相关文章

  1. js动态监听dom变化

    原生js 动态监听dom变化,根据不同的类型绑定不同的处理逻辑 // Firefox和Chrome早期版本中带有前缀   var MutationObserver = window.MutationO ...

  2. node.js监听文件变化

    前言 随着前端技术的飞速发展,前端开发也从原始的刀耕火种,向着工程化效率化的方向发展.在各种开发框架之外,打包编译等技术也是层出不穷,开发体验也是越来越好.例如HMR,让我们的更新可以即时可见,告别了 ...

  3. Angular.js中使用$watch监听模型变化

    $watch简单使用 $watch是一个scope函数,用于监听模型变化,当你的模型部分发生变化时它会通知你. $watch(watchExpression, listener, objectEqua ...

  4. $scope.$watch()——监听数据变化

    $scope.$watch(watchFn, watchAction, [deepWatch]):监听数据变化,三个参数 --watchFn:监听的对象,一个带有Angular 表达式或者函数的字符串 ...

  5. 如何使用NodeJs来监听文件变化

    1.前言 在我们调试修改代码的时候,每修改一次代码,哪怕只是很小的修改,我们都需要手动重新build文件,然后再运行代码,看修改的效果,这样的效率特别低,对于开发者来说简直不能忍. 2.构建自动编译工 ...

  6. android动态注册监听网络变化异常

    在使用广播接收器监听网络变化的时候,在AndroidManifest.xml中加入<user-permission android:name="android.permission.A ...

  7. Android实现后台长期监听时间变化

    1.首先我们的目的是长期监听时间变化,事实上应用程序退出. 通过了解我们知道注冊ACTION_TIME_TICK广播接收器能够监听系统事件改变,可是 查看SDK发现ACTION_TIME_TICK广播 ...

  8. Android 监听网络变化

    Android 监听网络变化

  9. --@angularJS--$scope.watch监听模型变化

    $watch简单使用 $watch是一个scope函数,用于监听模型变化,当你的模型部分发生变化时它会通知你. $watch(watchExpression, listener, objectEqua ...

随机推荐

  1. 获取Map的key和value的两种方法

    //使用迭代器,获取key; /*Iterator<String> iter = map.keySet().iterator(); while(iter.hasNext()){ Strin ...

  2. c++ 继承(一)

    代码重用 c++很重要的一个特征就是代码重用.在c语言中重用代码的方式就是拷贝代码.修改代码.c++可以用继承或组合的方式来重用.通过组合或继承现有的类来创建新类,而不是重新创建他们. (一)组合 组 ...

  3. 树莓派与node.js —— onoff、dht

    1. 发光二极管 tm-onoff var Gpio = require('tm-onoff').Gpio, led = new Gpio(17, 'out'), button = new Gpio( ...

  4. getAttribLocation的返回值

    var coord = gl.getAttribLocation(shaderProgram, "coordinates");    // 0 var coord2 = gl.ge ...

  5. triplet改进,变种

    1.一开始是FaceNet 2.一个重要的改进:image-based, Ding etal. 3.对于样本挑选的改进: 1)hard samples: hard positive 和hard neg ...

  6. verilog实现rgb2gray

    前言 项目算法需求,需要将RGB彩色图像转换为灰度图像,算法原理是很简单的,但是对于刚接触FPGA的宝宝来说,进行时序的设计和调试还是不那么容易的,为了省事儿,就按照上一篇中值滤波(http://ww ...

  7. 【集成学习】sklearn中xgboost模块的XGBClassifier函数

    # 常规参数 booster gbtree 树模型做为基分类器(默认) gbliner 线性模型做为基分类器 silent silent=0时,不输出中间过程(默认) silent=1时,输出中间过程 ...

  8. Angular 插值字符串

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  9. [LeetCode&Python] Problem 217. Contains Duplicate

    Given an array of integers, find if the array contains any duplicates. Your function should return t ...

  10. 如何上传本地项目到github

    github作为git的代码托管,而许多大神都在上面托管自己的开源项目.现在,我来记录一下我是如何将本地项目上传到github上. 一.安装git工具(具体方法见百度) 二.配置全局 三.创建.ssh ...