如何在粘贴到Jtextfield中时获取字符串的前缀,其中我只能插入有限数量的字符

时间:2015-04-14 22:54:26

标签: java jtextfield prefix

我正在限制一个JTextField,其中我只能在其中插入一定数量的字符,当它达到其极限时,它会发出一声哔声。 (java.awt.Toolkit.getDefaultToolkit()。嘟嘟声())。当我输入它时它完全正常。有用!但是当我尝试将一根长弦粘贴到它上面时,它不会粘贴任何东西,而是听到了哔哔声。我想得到文本的前缀而不是听到哔哔声。请帮我!它看起来像这样。

public class LimitedPlainDocument extends javax.swing.text.PlainDocument {

    private int maxLen = -1;

    public LimitedPlainDocument(int maxLen) {
        this.maxLen = maxLen;
    }

public void insertString(int param, String str, javax.swing.text.AttributeSet attributeSet) throws javax.swing.text.BadLocationException {
if (str != null && maxLen > 0 && this.getLength() + str.length() > maxLen) {
            java.awt.Toolkit.getDefaultToolkit().beep();
            return;
        }
        super.insertString(param, str, attributeSet);
    }

}

0 个答案:

没有答案