2014-12-04 2 views
0

У меня есть форма ярлыка JavaFx, чтобы заявить, была ли операция успешной или нет. Это должно обновляться автоматически, когда значение изменилосьСвойство JavaBeans с оператором if

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

ответ

0

Ваше состояние никогда не изменяется. operation.successProperty() != null просто проверяет, является ли ссылка, возвращаемая методом successProperty(), null: она никогда не была.

Я думаю, что вы хотите

label1.textProperty().bind(Bindings 
    .when(operation.successProperty()) 
    .then("succeed") 
    .otherwise("not succeed")); 
Смежные вопросы