62,634
社区成员




public Document createDefaultModel() {
return new JTextFieldLimit();
}
class JTextFieldLimit extends PlainDocument {
public void insertString(int offset, String str, AttributeSet attr)
throws BadLocationException{
if(str == null)
{
return;
}
if((getLength()+str.length())<=256 ) {
str = str.toUpperCase();
super.insertString(offset,str,attr);
}
}
}
}
JTextField.addKeyListener(new KeyListener()
{
public void keyTyped(KeyEvent e)
{
if(JTextField.getText().length()>128&&e.getKeyChar()!='\b')
{
e.setKeyChar('\0');
JOptionPane.showMessageDialog(null, "已达最大长度!");
}
}
public void keyPressed(KeyEvent e){}
public void keyReleased(KeyEvent e){}
});
import java.awt.Dimension;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import javax.swing.JFrame;
import javax.swing.JTextField;
public class test1 extends JFrame {
public test1() {
this.setLayout(null);
this.setSize(new Dimension(400, 200));
final JTextField txt = new JTextField();
txt.addKeyListener(new KeyAdapter() {
public void keyTyped(KeyEvent e) {
char c = e.getKeyChar();
if (Character.isDigit(c) && txt.getText().trim().length() < 10)//只允许数字,且长度不大于10
return;
e.consume();
}
});
txt.setBounds(50, 50, 120, 20);
this.add(txt);
this.setVisible(true);
}
public static void main(String args[]) {
new test1();
}
}