2012-01-23 52 views
12

即時嘗試更改javafx-2中TextArea的背景和文本顏色。JavaFX-2 - 設置幾種風格

myComponent = new TextArea(); 
    myComponent.setStyle("-fx-text-fill: white;"); 
    myComponent.setStyle("-fx-background-color: black;"); 
    myComponent.setStyle("-fx-font: " + GUIConstants.SysResponseFont.getName()); 
    myComponent.setStyle("-fx-font-family: " + GUIConstants.SysResponseFont.getFamily()); 
    myComponent.setStyle("-fx-font-size: " + GUIConstants.SysResponseFont.getSize()); 
    myComponent.setStyle("-fx-font-weight: " + GUIConstants.SysResponseFont.getStyle()); 

顏色和字體均未在此TextArea中設置。我必須使用不同的方法嗎?

回答

19

您的後者setStyle()覆蓋了以前的。接下來代碼將設置幾種風格:

myComponent.setStyle("-fx-text-fill: white;"+ 
    "-fx-background-color: black;"+ 
    "-fx-font: Courier New;"+ 
    "-fx-font-family: Courier New;"+ 
    "-fx-font-weight: bold;"+ 
    "-fx-font-size: 30;"); 

我猜您的代碼段將是:

myComponent = new TextArea(); 
myComponent.setStyle(
    "-fx-text-fill: white;"+ 
    "-fx-background-color: black;"+ 
    "-fx-font: " + GUIConstants.SysResponseFont.getName()+ ";" + 
    "-fx-font-family: " + GUIConstants.SysResponseFont.getFamily()+ ";" + 
    "-fx-font-size: " + GUIConstants.SysResponseFont.getSize()+ ";" + 
    "-fx-font-weight: " + GUIConstants.SysResponseFont.getStyle());   

注意;跡象在線路末端。

+0

謝謝,現在你說明它總是有道理:) – Rouby