我试图在javafx-2中更改TextArea的背景和文本颜色。
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中未设置颜色和字体。我必须使用不同的方法吗?
答案 0 :(得分:21)
您的后者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());
我想你的代码片段是:
;
请注意行尾的{{1}}符号。