在java中KeyListener监听的
我做了一个qq登陆界面,要求的是当按下回车的时候键盘事件发生但是我写完就不好用了。希望大家帮忙!注:这里的b2是JButton也就是登陆的按钮程序如下.b2.addKey...
我做了一个qq登陆界面,要求的是当按下回车的时候键盘事件发生但是我写完就不好用了。希望大家帮忙!注:这里的b2是JButton也就是登陆的按钮程序如下.
b2.addKeyListener(new KeyAdapter(){
public void keyPressed(KeyEvent e) {
if(e.getKeyCode()==KeyEvent.VK_ENTER){
System.out.println("ok");}
}
}); 展开
b2.addKeyListener(new KeyAdapter(){
public void keyPressed(KeyEvent e) {
if(e.getKeyCode()==KeyEvent.VK_ENTER){
System.out.println("ok");}
}
}); 展开
展开全部
首先,监听键盘相应的控件必须是获得焦点(focus)的情况下才能起作用.
其次,如果你要实现的效果是焦点在任何其他控件上时(比如其他button)回车也能起作用,那么,这个动作的监听控件就不应该是你的登陆button,因为此时你的焦点在其他地方,你的登陆button并没有焦点,所以无法获得响应.要在这种情况下使回车键响应,必须将你的监听控件设置在你的panel或fram或更底层的级别上,这样只要焦点在此控件中任何一个button上,监听动作才能响应, 比如:
Panel p = new Panel();
JButton b1 = new JButton();
JButton b2 = new JButton();
p.add(b1);
p.add(b2);
p.addKeyListener(new KeyListener() { public void keyPressed(KeyEvent e){......} });
p.setFocusable(true);//给p提供焦点.
其次,如果你要实现的效果是焦点在任何其他控件上时(比如其他button)回车也能起作用,那么,这个动作的监听控件就不应该是你的登陆button,因为此时你的焦点在其他地方,你的登陆button并没有焦点,所以无法获得响应.要在这种情况下使回车键响应,必须将你的监听控件设置在你的panel或fram或更底层的级别上,这样只要焦点在此控件中任何一个button上,监听动作才能响应, 比如:
Panel p = new Panel();
JButton b1 = new JButton();
JButton b2 = new JButton();
p.add(b1);
p.add(b2);
p.addKeyListener(new KeyListener() { public void keyPressed(KeyEvent e){......} });
p.setFocusable(true);//给p提供焦点.
展开全部
你可以先检测按键事件
public void keyPressed(KeyEvent e) {
System.out.println("key Press:" + e.getKeyCode() + " " + (e.getKeyCode()==KeyEvent.VK_ENTER));
}
实验下即可
public void keyPressed(KeyEvent e) {
System.out.println("key Press:" + e.getKeyCode() + " " + (e.getKeyCode()==KeyEvent.VK_ENTER));
}
实验下即可
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这个键盘监听应该放到密码框或者输入ID的文本框,
addActionListener(...)
addActionListener(...)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询