2015-04-20 67 views
1

我想更改SceneBuilder中textarea的背景顏色。
我在樣式菜單中未能更改:-fx-background-color。
所以我發現通過使用CSS文件來改變背景顏色。javafx textarea背景顏色不是css

.text-area .content{ 
    -fx-background-color: red; 
} 

但我想改變除了CSS文件的其他方式。 請給我一個提示。

+1

CSS是推薦的方法。你爲什麼不想使用它? –

+0

@James_D目前,在我的項目中,我將需要更改爲代碼。有沒有辦法? – jake

回答

5

您可以在Java代碼中進行更改:

@Override 
public void start(Stage stage) 
{ 
    TextArea area = new TextArea(); 
    Scene scene = new Scene(area, 800, 600); 
    stage.setScene(scene); 
    stage.show(); 

    Region region = (Region) area.lookup(".content"); 
    region.setBackground(new Background(new BackgroundFill(Color.BROWN, CornerRadii.EMPTY, Insets.EMPTY))); 

    // Or you can set it by setStyle() 
    region.setStyle("-fx-background-color: yellow"); 
} 

要做到這一點,我們首先查找文本區域的孩子Region子結構,然後在其上應用樣式。這個動作應該在舞臺顯示後完成。

+0

謝謝。有沒有可能使用textarea的setstyle? – jake

+0

@jake,當然看到更新。 –