黑马程序员技术交流社区
标题:
GUI中的问题
[打印本页]
作者:
李万海
时间:
2013-3-31 09:39
标题:
GUI中的问题
本帖最后由 李万海 于 2013-3-31 20:31 编辑
TextField tf = new TextField(20);
public void myEvent(){
tf.addKeyListener(new KeyAdapter(){
public void keyPressed(KeyEvent e){
if(!(e.getKeyCode()>=KeyEvent.VK_0 && e.getKeyCode()<=KeyEvent.VK_9))
e.consume();
}
});
}
复制代码
这是一段文本框键盘监听代码,需求是:限定文本框中只能输入0~9数字,
限制数字之外的非法字符的输入,以下代码虽然能限制字母的输入,
但是 !@#$ 等字符依旧能进入文本框(也就是shift+1,2,3...),原因是什么呢?
作者:
陈腾跃_2013
时间:
2013-3-31 10:01
奇怪了,坐等大神解释
不过KeyEvent有从 java.awt.event.InputEvent继承方法isShiftDown(),可以加入这个判断
作者:
陈腾跃_2013
时间:
2013-3-31 10:27
额,格式又乱了,重发一个再占一楼
tf.addKeyListener(new KeyAdapter()
{
public void keyPressed(KeyEvent e)
{
if(!(e.getKeyCode()>=KeyEvent.VK_0 && e.getKeyCode()<=KeyEvent.VK_9))
{
System.out.println("输入数字");
e.consume();
}
if(e.isShiftDown() && e.getKeyCode()>=KeyEvent.VK_0 && e.getKeyCode()<=KeyEvent.VK_9)
{
System.out.println("输入数字");
e.consume();
}
}
});
复制代码
作者:
陈丽莉
时间:
2013-3-31 18:46
若还有问题,请继续追问~ 没有的话,请将帖子分类改成【已解决】~
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2