Вы можете сделать несколько тем для этого цвета.Например, файл с именем themeRed.css, themeBlue.css
.root{
-fx-font-size: 14pt;
-fx-font-family: "Tahoma";
-fx-base: #DFB951;
-fx-background: #A78732;
-fx-focus-color: #B6A678;
}
И у вас есть кнопка, которая меняет цвета или темы.
Вы можете установить свои темы в своем приложении следующим образом:
public String themeRed = getClass (). GetResource ("themeRed.css"). ToExternalForm ();public String themeBlue = getClass (). getResource ("themeBlue.css"). toExternalForm ();
и в действии нажатия кнопки или в методе, инициируемом при щелчке, вы можете использовать:
btn.setOnAction(new EventHandler<ActionEvent>() {
@Override
public void handle(ActionEvent event) {
scene.getStylesheets().remove(themeRed);
scene.getStylesheets().add(themeBlue);
System.out.println("Stylesheets: " + scene.getStylesheets());
//You can see the stylesheet being used
}
});
Вы можете поиграть с этим, чтобы изменить темы.
Другой вариант, если вы просто измените, скажем, одну строку CSS, например, фон в одной кнопке, вы можете использовать setStyleметод в каждом элементе, который вы хотите.
Например:
btn.setStyle("-fx-background: #A78732;");