What is the recommended way to make a numeric TextField in JavaFX?
Very old thread, but this seems neater and strips out non-numeric characters if pasted. // force the field to be numeric only textField.textProperty().addListener(new ChangeListener<String>() { @Override public void changed(ObservableValue<? extends String> observable, String oldValue, String newValue) { if (!newValue.matches(“\\d*”)) { textField.setText(newValue.replaceAll(“[^\\d]”, “”)); } } });