У меня есть панель с некоторыми полями ввода, хотя при вводе текста в поля проверка правильности работает должным образом. В случае отправки кнопки о том, как вызывать проверенные поля ввода для проверки, посоветуйте нам проверить элемент управления вводом в javafx,Я хочу, если я нажму кнопку «Отправить» и покажет все сообщения проверки ввода.
static RequiredFieldValidator usernmeEmptyValidator = new RequiredFieldValidator();
public static GridPane getEmplyee() {
Label titles = new Label("Monitor");
JFXTextField firstName = new JFXTextField();
firstName.setLabelFloat(true);
firstName.setPromptText("First Name");
emptyValidator(firstName, "Please Enter first Name");
JFXTextField lastName = new JFXTextField();
lastName.setLabelFloat(true);
lastName.setPromptText("Last Name");
emptyValidator(lastName, "Please Enter last Name");
JFXTextField mobile = new JFXTextField();
mobile.setLabelFloat(true);
mobile.setPromptText("Mobile");
JFXTextArea address = new JFXTextArea();
address.setPromptText("Address:");
address.setStyle("-fx-background-color: #d1e0e0;");
JFXButton submit = new JFXButton("Submit");
GridPane gridPane = new GridPane();
gridPane.add(titles, 0, 0);
gridPane.add(firstName, 0, 1);
gridPane.add(lastName, 0, 2);
gridPane.add(mobile, 0, 3);
gridPane.add(address, 0, 4);
gridPane.add(submit, 0, 5);
gridPane.setPadding(new Insets(50, 0, 0, 50));
gridPane.setVgap(40);
submit.setOnAction(e -> {
//
});
return gridPane;
}
public static void emptyValidator(JFXTextField textField, String message) {
textField.getValidators().add(usernmeEmptyValidator);
usernmeEmptyValidator.setMessage(message);
textField.focusedProperty().addListener(new ChangeListener<Boolean>() {
@Override
public void changed(ObservableValue<? extends Boolean> observable, Boolean oldValue, Boolean newValue) {
if (!newValue) {
textField.validate();
}
}
});
} ```