Я нашел этот код в Интернете, который запрещает пользователю вводить что-либо, кроме числа в TextField
. Я хочу использовать это в своем коде для домашней работы, но я не понимаю, что происходит. Кто-нибудь может помочь мне понять, ПОЧЕМУ это работает? Спасибо.
valueTextField.textProperty().addListener(new ChangeListener<String>() {
@Override
public void changed(ObservableValue<? extends String> observable, String oldValue, String newValue) {
if (!newValue.matches("\\d{0,9}([\\.]\\d{0,9})?")) {
valueTextField.setText(oldValue);
}
}
});