I used this code to make it numeric:
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]", ""));
}
});
, but I also want it to accept 1-digit integers only.