Javafx의 데이터 바인딩은 변수 선언 중에 만 가능합니까?
-
20-08-2019 - |
문제
Javafx 튜토리얼 및 샘플을 살펴보면 바인딩은 항상 Varibale 선언 중에 이루어집니다.
def y = bind x;
또는
def address = Address {
street: bind myStreet;
};
그러나 나는 어떻게해야합니까? 제 경우에는 fxdloader에 svgpath를로드 한 다음 svgpath.visible을 변수에 바인딩하려고합니다. 이것을 어떻게 달성 할 수 있습니까?
var data = true;
var fxdContent = FXDLoader.load("{__DIR__}plan.fxz");
var sc = fxdContent.lookup("SC0013") as SVGPath;
sc.visible = bind data; //That doesn't work
해결책
대신 교체 트리거를 사용할 수 있습니다
var fxdContent = FXDLoader.load("{__DIR__}plan.fxz");
var sc = fxdContent.lookup("SC0013") as SVGPath;
var data = true on replace {
sc.visible = data;
}
당신은 또한 할 수 있습니다 :
def data = bind sc.visible with inverse;
이렇게하면 두 변수 간의 양방향 업데이트가 제공됩니다. 에 따르면 언어 사양, 당신은 다른 곳에서 "바인딩"을 사용할 수 없습니다.
다른 팁
예, 변수를 선언 할 때만 변수를 바인딩 할 수 있습니다.
제휴하지 않습니다 StackOverflow