我有一个.css
文件,其中包含一些标签样式。这是这个文件的一部分:
#defaultBeforeAndNowLabel {
-fx-background-color: "C4BA62";
-fx-text-fill: blue;
-fx-alignment: center;
-fx-font-size: 1.3em;
-fx-font-weight: bold;
}
#changedLabelBefore {
-fx-font-size: 1.5em;
-fx-background-color: red;
-fx-text-fill: black;
-fx-alignment: center;
-fx-font-weight: bold;
}
#changedLabelNow {
-fx-font-size: 1.5em;
-fx-background-color: lawngreen;
-fx-text-fill: white;
-fx-alignment: center;
-fx-font-weight: bold;
}
在代码中我使用这样的东西:
label.setId("changedLabelBefore");
它有效,但.css
文件中有太多重复,我想我可以使用类似继承的东西来避免它。如何更改我的.css
文件以及如何在java代码中使用它?
答案 0 :(得分:0)
一种可能的解决方案是使用类而不是ID。
.css文件看起来像
.defaultLabel {
-fx-alignment: center;
-fx-font-weight: bold;
…
}
.defaultLabelBefore {
-fx-text-fill: black;
-fx-background-color: red;
}
相应的java代码看起来像
Label.getStyleClass.addAll(“defaultLabel”, “defaultLabelBefore”);