2016-05-19 84 views

回答

2

Bindings.selectDouble可以用来创建此绑定:

DoubleBinding minXBinding = Bindings.selectDouble(node.boundsInParentProperty(), "minX"); 

而且我可以肯定的是,监听程序将在单独的组件被通知更改?

是的。虽然它不是记载,Bounds是不变的,通过查看源代码,你可以找出:

  • 性能,如minX存储在域与private访问。
  • 除构造函数外,没有对这些字段的写入访问。
  • 这些属性的吸气剂是final

因此,Bounds是有效的,因此如果边界发生变化,您可以确定属性的值必须被替换。

0

boundsInParentProperty()的情况下,您可以使用Bindings.createDoubleBinding

DoubleBinding minXBinding = Bindings.createDoubleBinding(() -> boundsInParentProperty.get().getMinX(), boundsInParentProperty); 

DoubleProperty minX = new SimpleDoubleProperty(); 
minX.bind(minXBinding); 
相关问题