2015-10-26 28 views
1

我想改變顏色後得到一個正常的文本字段。薪水和工資是我改變它的紅色文本字段。投資收入是我的努力使其恢復正常,總收入是我想要獲得的文本字段,我將顏色更改爲紅色。如何在更改文本字段顏色後獲得正常的JavaFX文本字段?

這是我用於顏色變化的代碼。任何幫助將非常感激。

tfTotalPaymentOverLife.textProperty().addListener((ob, oldValue, newValue) -> { 
     if (isNumeric(newValue)) { 
      tfTotalPaymentOverLife.setStyle("-fx-background-color: transparent;"); 
     } else { 
      tfTotalPaymentOverLife.setStyle("-fx-background-color: red;"); 

     } 
    }); 

Hello

回答

3

您可以使用CSS -fx-control-inner-background繪製文本字段的內部背景。

你可以期望的背景色設置爲這個屬性或返回到默認的顏色使用setStyle("")

代碼:

textField.textProperty().addListener((ob, oldValue, newValue) -> { 
    if (isNumeric(newValue)) { 
     textField.setStyle(""); 
    } else { 
     textField.setStyle("-fx-control-inner-background: red"); 
    } 
}); 
+0

或者只是'textField.setStyle(「」);',它將恢復到用戶代理樣式表(即modena)中定義的任何值。 :)。 –

+0

@James_D這真的很有用。謝謝 ! :) – ItachiUchiha

相關問題