综观JavaFX的教程和样品,绑定总是期间varibale声明制备:

def y = bind x;

def address = Address {
  street: bind myStreet;
};

不过,我该怎么办,如果我有一个exisiting对象 - 因此不声明它 - 需要绑定的属性之一。在我来说,我加载与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
有帮助吗?

解决方案

可以使用替代触发代替e.g。

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;

这会给你两个变量之间的双向更新。按照语言规范,你不能使用 “绑定” 其他地方。

其他提示

是,可以绑定仅当正在声明它的变量。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top