【问题标题】:How can I bind two SimpleDoubleProperty`s to each other with an exponential relation? JavaFX如何以指数关系将两个 SimpleDoubleProperty 相互绑定? JavaFX
【发布时间】:2016-07-28 11:07:47
【问题描述】:

我知道如何进行这样的绑定:

doublePropertyOne.bind(doublePropertyTwo.multiply(2));

我需要的是上面带有指数关系的示例:

doublePropertyOne.bind(doublePropertyTwo.asExponentialOfE());

这样我得到一个等于 E^doubleProperty 的 doubleProperty。 有什么方法可以完成这种关系,或者你会如何实现它?

【问题讨论】:

    标签: java javafx properties relation exponential


    【解决方案1】:

    您可以使用Bindings class 创建依赖于doublePropertyTwo 的绑定:

    doublePropertyOne.bind(Bindings.createDoubleBinding(() -> Math.exp(doublePropertyTwo.get()), doublePropertyTwo));
    

    这里作为第一个参数传递给createDoubleBindingCallable 会在每次从第二个参数(在本例中为doublePropertyTwo)开始传递的依赖项发生变化时重新评估。

    【讨论】:

      猜你喜欢
      • 2018-11-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-12-29
      • 1970-01-01
      • 2013-03-22
      • 2011-05-07
      • 2018-03-04
      相关资源
      最近更新 更多