Не могу изменить цвет валидатора (RequiredFieldValidator) JavaFX (JFoenix) - PullRequest
0 голосов
/ 26 июня 2018

Пожалуйста, помогите мне изменить цвет валидатора этот совет мне не помог:

.error * {
  -fx-text-fill: someColor;
}

и это просто меняет цвет текста подсказки:

-fx-prompt-text-fill: yourcolor;

Кроме того, я проверю это: (FXML)

<JFXTextField fx:id="usernameText" labelFloat="true" minWidth="220" promptText="%login.label" style="-fx-background-color: transparent;" styleClass="input">
    <validators>
        <RequiredFieldValidator message="Необходимо ввести имя пользователя" style="-fx-text-fill: red">
        </RequiredFieldValidator>
    </validators>
</JFXTextField>

или установить styleClass="myClass" или через id="validator"; И опишите class / id в моем .css-файле (файл i.css не имеет проблем)

Также я настроил стиль в моем контроллере (на groovy)

validator.setStyle("-fx-text-fill: red")

или

validator.getStyleClass().add("validator")

или

validator.setId("validator")

но все безуспешно

Мой валидатор-код:

RequiredFieldValidator validator = new RequiredFieldValidator()   
usernameText.focusedProperty().addListener(new ChangeListener<Boolean>() {
    @Override
        void changed(ObservableValue<? extends Boolean> observable, Boolean oldValue, Boolean newValue) {
            if (!newValue) {
                usernameText.validate()
            }
        }
    })

1 Ответ

0 голосов
/ 27 июня 2018

Я нашел ответ на свой вопрос

Вы можете использовать инструмент ScenicView, чтобы определить, к какому CSS-классу относится объект.

В моем случае это

.error-label {
    -fx-text-fill: red;
    -fx-font-size: 8pt;
}

Это исправило мою проблему

enter image description here

...