将填充值绑定到DoubleProperty

时间:2017-04-05 09:38:38

标签: javafx properties padding observable

在JavaFX应用程序中,我正在尝试将填充值设置为VBox。我写了那段代码:

vBox.setPadding(new Insets(10));

但是使用该代码,我的vBox填充值为10px“固定”值。而不是那个结果,我想将该值链接到场景大小的百分比,即使我正在调整大小。 我成功获得了场景大小的DoubleProperty,但是如何将其与填充值相关联? 我认为我的代码可以从:

开始
vBox.paddingProperty().bind(observable);

但是我无法将DoubleProperty转换为填充的一种“可观察”对象。

谢谢你的帮助。

1 个答案:

答案 0 :(得分:3)

使用Bindings.createObjectBinding()方法创建自定义对象绑定,然后根据您的Insets百分比创建DoubleProperty

vBox.paddingProperty().bind(Bindings.createObjectBinding(() -> new Insets(percentage.doubleValue()), percentage));