JavaFX 2.2 TextField 最大长度

标签 java javafx javafx-2 textfield maxlength

我正在处理 JavaFX 2.2 项目,但在使用 TextField 控件时遇到问题。我想限制用户可以在每个 TextField 中输入的字符数。但是我找不到属性或类似 maxlength 的东西。 Swing 中存在同样的问题,已解决 this方法。如何解决 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);
            }
        }
    });
}

工作完美,除了撤消错误。

关于JavaFX 2.2 TextField 最大长度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15159988/

相关文章:

java - Easy ui 1.3.5 - 内部带有数据网格的对话框未加载

Java enum.valueOf(String) 和 enum.class

java - Java 中图像的无文件资源包?

java - 如何将复选框添加到表中以读取和写入它在 JavaFX 中表示的对象属性

当使用 fxml 作为 fxml 中的组件时,JavaFX FXML 没有正确地看到我的 Controller 方法 "Controller is not defined on root component"

java - 使用JavaFX图表API绘制图表图像

javafx-2 - 在 JavaFX 的同一个场景中多次重用同一个 ImageView

css - 仅将 dropShadow 添加到网格 Pane JavaFx 2.2 的边框

java - com.google.android.material :material:1. 1.0-alpha08 失败但 1.0.0 工作正常

java - 如何使 JavaFX 对话框在按下 OK 按钮后不自行关闭