基本上我的Item类有两个StringProperty
,即amount
和upOrDown
。他们的价值观将自动更新加班。
到目前为止,我所做的就是将label1
textProperty
绑定到第一个StringProperty
,amount
。
fxLabel1.textProperty().bind(item.amountProperty());
问题1:
我还想做的是将此标签文本的颜色绑定到第二个字符串属性upOrDown
,即upOrDown
为{{1}时文本颜色为金色UP
为upOrDown
时为紫色和紫色。我怎样才能做到这一点?
问题2:
其次,我想在单独的标签中显示图像(不确定标签是否是此处的最佳选项),具体取决于DOWN
的字符串值。与练习类似,我想在upOrDown
为image1
时在标签中显示upOrDown
,在UP
为image2
时显示upOrDown
。我怎样才能做到这一点?
答案 0 :(得分:5)
您可以使用绑定:
label.textFillProperty().bind(
Bindings.when(upOrDown.isEqualTo("UP"))
.then(Color.GOLD).otherwise(Color.PURPLE));
同样,对于您的问题2,您可以使用Bindings将图像加载到ImageView中。