JavaFX IntegerProperty bind to an expression

Description

JavaFX IntegerProperty bind to an expression


import javafx.beans.property.IntegerProperty;
import javafx.beans.property.SimpleIntegerProperty;

public class Main {
  public static void main(String[] args) {
    // Create three properties
    IntegerProperty x = new SimpleIntegerProperty(10);
    IntegerProperty y = new SimpleIntegerProperty(20);
    IntegerProperty z = new SimpleIntegerProperty(60);

    // Create the binding z = x + y
    z.bind(x.add(y));/*ww w  .j a  v  a  2s. c om*/

    System.out.println("After binding z: Bound = " + z.isBound() + ", z = " + z.get());

    // Change x and y
    x.set(15);
    y.set(19);
    System.out.println("After changing x and y: Bound = " + z.isBound() + ", z = " + z.get());

    // Unbind z
    z.unbind();

    // Will not affect the value of z because z is not bound to x and y anymore
    x.set(100);
    y.set(200);
    System.out.println("After unbinding z: Bound = " + z.isBound() + ", z = " + z.get());
  }
}



PreviousNext

Related