JavaFX中的绑定标签textProperty

JavaFX中的绑定标签textProperty,java,javafx,data-binding,Java,Javafx,Data Binding,我在初始化方法JavaFX中有以下代码: montantPayeProperty = new SimpleDoubleProperty(0); labelMontantPaye.textProperty().bind(montantPayeProperty.asString()); montantpaye属性是一个double属性,labelmontpaye是一个标签 当我点击时,我有一个按钮,这个方法叫做: public void majMontantPaye(Double montantP

我在初始化方法JavaFX中有以下代码:

montantPayeProperty = new SimpleDoubleProperty(0);
labelMontantPaye.textProperty().bind(montantPayeProperty.asString());
montantpaye属性
是一个
double属性
labelmontpaye
是一个
标签

当我点击时,我有一个按钮,这个方法叫做:

public void majMontantPaye(Double montantPaye) {
   this.montantPayeProperty = new SimpleDoubleProperty(montantPaye);
}
问题是,当我单击按钮时,我的
标签labelMontantPaye
不会使用
montantPaye
自动刷新。为什么?

谢谢。

试试这个:

 public void majMontantPaye(Double montantPaye) {
  this.montantPayeProperty.setValue(montantPaye);
}
试试这个:

 public void majMontantPaye(Double montantPaye) {
  this.montantPayeProperty.setValue(montantPaye);
}

在setter中替换属性,以便将
标签
文本
属性绑定到不同的属性实例

属性通常在创建后不应被替换。相反,应该修改存储在属性中的值。属性
(非惰性初始化)的标准是


在setter中替换属性,以便将
标签
文本
属性绑定到不同的属性实例

属性通常在创建后不应被替换。相反,应该修改存储在属性中的值。属性
(非惰性初始化)的标准是

当你打电话的时候

labelMontantPaye.textProperty().bind(montantPayeProperty.asString());
this.montantPayeProperty = new SimpleDoubleProperty(montantPaye);
您正在将
标签
textProperty
中存储的指针指向的对象绑定到
montantPayeProperty
中存储的指针指向的对象

当你打电话的时候

labelMontantPaye.textProperty().bind(montantPayeProperty.asString());
this.montantPayeProperty = new SimpleDoubleProperty(montantPaye);
存储在
montantPayeProperty
中的指针将指向新对象,但旧对象和
textProperty
之间的绑定仍将处于活动状态。旧对象未修改,因此此属性不会更新

不应设置指向新对象的指针,而应通过调用以下命令设置存储在当前指向对象中的值:

montantPayeProperty.setValue(montantPaye);
或者

当你打电话的时候

labelMontantPaye.textProperty().bind(montantPayeProperty.asString());
this.montantPayeProperty = new SimpleDoubleProperty(montantPaye);
您正在将
标签
textProperty
中存储的指针指向的对象绑定到
montantPayeProperty
中存储的指针指向的对象

当你打电话的时候

labelMontantPaye.textProperty().bind(montantPayeProperty.asString());
this.montantPayeProperty = new SimpleDoubleProperty(montantPaye);
存储在
montantPayeProperty
中的指针将指向新对象,但旧对象和
textProperty
之间的绑定仍将处于活动状态。旧对象未修改,因此此属性不会更新

不应设置指向新对象的指针,而应通过调用以下命令设置存储在当前指向对象中的值:

montantPayeProperty.setValue(montantPaye);
或者


这是一个信息丰富的答案,不仅回答了问题,还提供了一些背景知识和附加知识。非常好:-)这是一个信息丰富的答案,不仅回答了问题,还提供了一些背景知识和附加知识。很好:-)