我最近在网上看到一篇文章很不错,对于限制文本框输入长度的显示很方便
JAVA不像C#能够有maxLength这个属性对文本框的输入长度进行控制,但也是有办法实现相应的功能的。
写一个MyDocument类,继承PlainDocument。重写insertString(int offset,String str,AttributeSet a)方法。
方法如下:
package com.dao;
import javax.swing.text.BadLocationException;
import javax.swing.text.PlainDocument;
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); } }