Я пытаюсь изменить цвет фона кнопки со стрелкой в ComboBox.Использование JavaFX 8 со стандартной темой Modena.css, если это имеет значение.
Согласно документации (https://docs.oracle.com/javase/8/javafx/api/javafx/scene/doc-files/cssref.html#combobox), Кнопка со стрелкой является панелью StackPane, поэтому я предполагаю, что будет работать следующее:
.combo-box .arrow-button {
-fx-background-color: blue;
}
Это должно изменить фон на синий, но цвет все равно остался прежним.
Фон может быть изображением, поэтому я попытался добавить -fx-background-image: null;
к вышесказанному, но это не похоже, что это работает.
Не уверен, что проблема сейчас.
ОБНОВЛЕНИЕ: НАЙДЕНО ПРОБЛЕМА!
Видимо, этопроблема с моим кодом CSS, имеющим следующее:
#arrow-button {
-fx-padding: 5 0 5 0;
-fx-font: 16 arial;
-fx-font-weight: bold;
-fx-background-color:
linear-gradient(#FFE4D1 0%, #EED5C2 25%, #EDD2BD 75%, #FFE4D1 100%),
linear-gradient(#FFE1CC 0%, #FCE2CF 20%, #EDD0BB 80%, #FFE1CC 100%);
-fx-border-color: #ED9D9C;
-fx-background-radius: 5;
-fx-border-radius: 5;
}
Очевидно, JavaFX берет мой селектор идентификаторов и использует его для отображения .combo-box .arrow-button.
Это, вероятно,ошибка, но не уверен. Спросит разработчиков JavaFX.
Спасибо за помощь!