Я нашел эту ссылку полезно, чтобы текстовое поле JavaFX принимало только числовые значения. Однако я хотел бы упростить решение, чтобы его можно было реализовать на нескольких текстовых полях.
Ищете что-то вроде:
ChangeListener<String> numericTextFieldListener = (observable, oldValue, newValue) -> {
if(!newValue.matches("\\d*")) {
//textField.setText(newValue.replaceAll("[^\\d]", "")); //how to set this new value to parent text field?
}
};
textField1.textProperty().addListener(numericTextFieldListener);
textField2.textProperty().addListener(numericTextFieldListener);
textField3.textProperty().addListener(numericTextFieldListener);
textField4.textProperty().addListener(numericTextFieldListener);
// ... and so on
Любая рекомендация?