如何将ColorPicker值属性绑定到ScalaFX中的ScalaFX ObjectProperty?

时间:2018-06-17 16:27:56

标签: javafx binding color-picker scalafx object-property

我似乎无法理解将ColorPicker值属性绑定到ScalaFX中的ObjectProperty的正确方法。这是我到目前为止所做的:

private val colorProp = new ObjectProperty[Color](this, "test", Color.White)

// Create color picker
val cp: ColorPicker = new ColorPicker(Color.White) {
    prefWidth = Prop.pickerWidth
}

colorProp <==> cp.value

但是,我在这里遇到了这种类型错误:

[error]   (v: javafx.beans.property.Property[scalafx.scene.paint.Color])Unit <and>
[error]   (v: scalafx.beans.property.Property[scalafx.scene.paint.Color,scalafx.scene.paint.Color])Unit
[error]  cannot be applied to (scalafx.beans.property.ObjectProperty[javafx.scene.paint.Color])
[error]         colorProp <==> cp.value

我能够使像StringProperty这样的东西正常工作,但是一旦我尝试使用ObjectProperty,就会出现这个问题。任何帮助都会很棒!

1 个答案:

答案 0 :(得分:0)

原来我需要使用JavaFX颜色而不是ScalaFX颜色。这对我来说仍然很奇怪,但它确实有效!任何进一步的解释都会很棒。

private val colorProp = new ObjectProperty[javafx.scene.paint.Color](this, "test", Color.White)