天天看點

java 限制文本框長度_JAVA中限制文本框輸入長度的辦法

JAVA不像C#能夠有maxLength這個屬性對文本框的輸入長度進行控制,但也是有辦法實作相應的功能的。

寫一個MyDocument類,繼承PlainDocument。重寫insertString(int offset,String str,AttributeSet a)方法。

代碼如下:

public class MyDocument extends PlainDocument{

private int maxLength;

public MyDocument(int newMaxLength)

{

super();

maxLength=newMaxLength;

}

public MyDocument()

{

this(10);

}

public void insertString(int offset,String str,javax.swing.text.AttributeSet a) throws BadLocationException

{

if(getLength()+str.length()>maxLength)

{

return;

}

else

{

super.insertString(offset, str,a);

}

}

}

如果想讓jTextField的輸入長度為13,那麼隻需jt_username.setDocument(new MyDocument(13))即可。