带有if语句的JavaBeans属性

时间:2014-12-04 05:10:21

标签: if-statement properties javafx javabeans javafx-8

如果操作成功与否,我有一个标签形式JavaFx。这应该在值改变时自动更新

public class operation {

    private BooleanProperty success = new SimpleBooleanProperty();

    public final boolean getSuccess() {
        return success.get();
    }

    public final void setSuccess(boolean value) {
        success.set(value);
    }

    public BooleanProperty successProperty() {
        return success;
    }
}

这个代码有一些地方:

operation.setSuccess(true);

和此:

label1.textProperty().bind(Bindings.format("%s", operation.successProperty() != null || false? "succeed": "not succeed" ));

问题successProperty()不是值,如果我调用getValue(),它将不会在UI上更新

1 个答案:

答案 0 :(得分:0)

你的病情永远不会改变。 operation.successProperty() != null只检查方法successProperty()返回的引用是否为null:它永远不会。

我想你想要

label1.textProperty().bind(Bindings
    .when(operation.successProperty())
    .then("succeed")
    .otherwise("not succeed"));