最近在做一个学生管理系统项目的时候,在添加学生信息的时候需要输入年龄,那么就需要让 JTextField 只能输入数字了,找了很多方法都不能满意,大多都是按提交按钮才能告诉用户“嘿,你输错了!”最后还是选择了键值监听的办法。实现的代码如下
JTextField textField = new JTextField();
textField.addKeyListener(new KeyAdapter() {
public void keyTyped(KeyEvent e){
int keyChar = e.getKeyChar();//读取输入的键值
if(keyChar>=KeyEvent.VK_0&&keyChar<=KeyEvent.VK_9){//判断输入的键值是否在大于等于0并且小于等于9
//如果是,什么都不操作,相当于放行吧
}else{
e.consume();//这句很重要,这句的作用是屏蔽输入的键值。
}
}
});
这个方法也适用于其他的输入框限制