当前位置: 首页 > 面试题库 >

JavaFX 2.2 TextField maxlength

邢寒
2023-03-14
问题内容

我正在使用JavaFX
2.2项目,使用TextField控件时遇到问题。我想限制用户将输入到每个TextField的字符,但是我找不到属性或类似maxlength的东西。存在同样的问题,可以通过这种方式解决。如何解决JavaFX 2.2的问题?


问题答案:

这是在通用文本字段上完成工作的更好方法:

public static void addTextLimiter(final TextField tf, final int maxLength) {
    tf.textProperty().addListener(new ChangeListener<String>() {
        @Override
        public void changed(final ObservableValue<? extends String> ov, final String oldValue, final String newValue) {
            if (tf.getText().length() > maxLength) {
                String s = tf.getText().substring(0, maxLength);
                tf.setText(s);
            }
        }
    });
}

除了该“撤消”错误外,它的工作原理非常完美。



 类似资料:

相关阅读

相关文章

相关问答