수색…


간단한 속성 바인딩

JavaFX에는 하나의 속성을 다른 속성에 바인딩하는 방법을 제공하는 바인딩 API가 있습니다. 즉, 한 속성의 값이 변경 될 때마다 바운드 속성의 값이 자동으로 업데이트됩니다. 간단한 바인딩 예제 :

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
}

더하기, 빼기, 나누기 등을 적용하여 기본 속성을 바인딩 할 수도 있습니다.

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'
}

모든 객체는 SimpleObjectProperty에 넣을 수 있습니다.

SimpleObjectProperty<Color> color=new SimpleObjectProperty<>(Color.web("45f3d1"));

양 f 향 바인딩을 작성할 수 있습니다. 이 경우 속성은 서로 다릅니다.

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
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow