2017-08-09 89 views
2

在這裏,我想根據布爾值禁用和啓用按鈕。javafx - 根據布爾值綁定按鈕

boolean result=(txtItem.getText().isEmpty() && txtQty.getText().isEmpty()); 

btnOrder.disableProperty().bind(xxxxx); 

我該輸入什麼?

+0

你能否提供更多細節?當'result'計算出的值變爲真時,你希望'btnOrder'被禁用?是'txtItem'和'txtQty'文本字段,還是類似的東西? –

回答

3

如果我理解你的要求(特別是,假設txtItemtxtQty是某種TextInputControl),你可以做

btnOrder.disableProperty().bind(Bindings.createBooleanBinding(
    () -> txtItem.getText().isEmpty() && txtQty.getText().isEmpty(), 
    txtItem.textProperty(), txtQty.textProperty())); 

btnOrder.disableProperty().bind(
    Bindings.length(txtItem.textProperty()).isEqualTo(0) 
    .and(Bindings.length(txtQty.textProperty()).isEqualTo(0))); 
+0

Woow ..謝謝。有效。 – kasun

+0

如果我想檢查值..可以說,如果txtItem的值小於txtQty的值,那麼按鈕必須啓用 – kasun

+0

@kasun只需在第一個版本的評估函數中包含該條件即可。 (如果你將文本轉換爲數字值,那麼我認爲沒有相應的第二個版本可以工作。) –