import javax.swing.*;
import javax.swing.text.*;
import java.awt.Toolkit;
public class LimitedStyledDocument extends DefaultStyledDocument {
int maxCharacters;
public LimitedStyledDocument(int maxChars) {
maxCharacters = maxChars;
}
public void insertString(int offs, String str, AttributeSet a)
throws BadLocationException {
//This rejects the entire insertion if it would make
//the contents too long. Another option would be
//to truncate the inserted string so the contents
//would be exactly maxCharacters in length.
if ((getLength() + str.length()) <= maxCharacters)
super.insertString(offs, str, a);
else
Toolkit.getDefaultToolkit().beep();
}
}
|