2016-11-21 11 views
1

整数変数が変更されたときにボーダパンの左プロパティを特定のノードに変更する方法を教えてください。どのようなタイプのObjectPropertyを使用し、これをバインドするだけでなく、整数変数をリッスンする方法は? getLeftNodeForValue(...)が与える整数値のための適切なノードを取得するだけの方法であるBorderpaneをプロパティをJavaFXノードにバインドする方法

答えて

1
BorderPane border = new BorderPane(); 
IntegerProperty intProp = new SimpleIntegerProperty(); 

border.leftProperty().bind(Bindings.createObjectProperty(
    () -> { 
     int value = intProp.get(); 
     Node node = getLeftNodeForValue(value); 
     return node ; 
    }, 
    intProp)); 

あるいは、単に結合するのではなく、リスナーを使用する:

intProp.addListener((obs, oldValue, newValue) -> 
    border.setLeft(getLeftNodeForValue(newValue.intValue()))); 
関連する問題