javafx
Liaisons JavaFX
Recherche…
Liaison de propriété simple
JavaFX dispose d'une API de liaison, qui permet de lier une propriété à l'autre. Cela signifie que chaque fois que la valeur d'une propriété est modifiée, la valeur de la propriété liée est automatiquement mise à jour. Un exemple de liaison simple:
SimpleIntegerProperty first =new SimpleIntegerProperty(5); //create a property with value=5
SimpleIntegerProperty second=new SimpleIntegerProperty();
public void test()
{
System.out.println(second.get()); // '0'
second.bind(first); //bind second property to first
System.out.println(second.get()); // '5'
first.set(16); //set first property's value
System.out.println(second.get()); // '16' - the value was automatically updated
}
Vous pouvez également lier une propriété primitive en appliquant une addition, une soustraction, une division, etc.:
public void test2()
{
second.bind(first.add(100));
System.out.println(second.get()); //'105'
second.bind(first.subtract(50));
System.out.println(second.get()); //'-45'
}
Tout objet peut être placé dans SimpleObjectProperty:
SimpleObjectProperty<Color> color=new SimpleObjectProperty<>(Color.web("45f3d1"));
Il est possible de créer des liaisons bidirectionnelles. Dans ce cas, les propriétés dépendent les unes des autres.
public void test3()
{
second.bindBidirectional(first);
System.out.println(second.get()+" "+first.get());
second.set(1000);
System.out.println(second.get()+" "+first.get()); //both are '1000'
}
Modified text is an extract of the original Stack Overflow Documentation
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow