广州北大青鸟计算机职业培训学校
互联网技术培训、软件技术培训、大数据培训、云计算培训、数据分析培训信息网
当前位置:网站首页 > 软件教程 > Java技术 > 正文

惠州JavaFX属性更改事件是什么?_北大青鸟IT学校

作者:邓华发布时间:2021-05-16分类:Java技术浏览:716


导读:大家知道JavaFX属性更改事件是什么吗?下面就让我们一起来看看惠州北大青鸟老师是怎么回答的。

大家知道JavaFX属性更改事件是什么吗?下面就让我们一起来看看惠州北大青鸟老师是怎么回答的。

属性可以通知值更改事件处理程序,以在属性更改时进行响应。

JavaFX属性对象包含一个addListener()方法,它接受两种类型的功能接口:ChangeListener和invalidationListener。

所有JavaFX属性都是ObservableValue和Observable接口的后代,它们分别为ChangeListener和invalidationListener提供了addListener()方法。

以下代码显示如何创建要注册到属性的ChangeListener。随着属性的值改变,将调用change()方法。

import javafx.beans.property.SimpleIntegerProperty;import javafx.beans.value.ChangeListener;import javafx.beans.value.ObservableValue;public class Main {  public static void main(String[] args) {
   SimpleIntegerProperty xProperty = new SimpleIntegerProperty(0);    // Adding a change listener with anonymous inner class    xProperty.addListener(new ChangeListener<Number>() {
     @Override      public void changed(ObservableValue<? extends Number> ov, Number oldVal,
         Number newVal) {
       System.out.println("old value:"+oldVal);
       System.out.println("new value:"+newVal);
     }
   });    // Adding a change listener with lambda expression    xProperty.addListener((ObservableValue<? extends Number> ov, Number oldVal,
       Number newVal) -> {
         System.out.println("old value:"+oldVal);
         System.out.println("new value:"+newVal);
     });
 }
}

以下代码显示如何创建一个invalidationListener以向属性注册。随着属性的值更改,将调用invalidated()方法。

import javafx.beans.InvalidationListener;
import javafx.beans.Observable;
import javafx.beans.property.SimpleIntegerProperty;public class Main {  public static void main(String[] args) {
   SimpleIntegerProperty xProperty = new SimpleIntegerProperty(0);

   // Adding a invalidation listener (anonymous inner class)
   xProperty.addListener(new InvalidationListener() {
     @Override      public void invalidated(Observable o) {
       System.out.println(o.toString());
     }
   });

   // Adding a invalidation listener (lambda expression)
   xProperty.addListener((Observable o) -> {
     System.out.println(o.toString());
   });

 }
}

ChangeListener和invalidationListener之间的区别。

  • 使用ChangeListener,我们将获得Observable(ObservableValue),旧值和新值。

  • 使用invalidationListener只获取Observable对象(属性)。

想学Java的同学们,可以来惠州北大青鸟新方舟校区详细了解。

Java9.png

Java

标签:惠州计算机JAVA软件开发惠州计算机Java软件开发惠州计算机JAVA培训惠州计算机JAVA软件开发学校惠州计算机Java软件开发培训JAVAJava软件开发北大青鸟IT计算机学校北大青鸟IT软件学校北大青鸟IT学校


Java技术排行
标签列表
网站分类
文章归档
最近发表