在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");}
}
});
展开
 我来答
netaliang
2008-12-24 · TA获得超过141个赞
知道小有建树答主
回答量:125
采纳率:0%
帮助的人:161万
展开全部
首先,监听键盘相应的控件必须是获得焦点(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提供焦点.
ping3021
2008-12-24 · TA获得超过488个赞
知道小有建树答主
回答量:378
采纳率:0%
帮助的人:289万
展开全部
你可以先检测按键事件
public void keyPressed(KeyEvent e) {
System.out.println("key Press:" + e.getKeyCode() + " " + (e.getKeyCode()==KeyEvent.VK_ENTER));
}
实验下即可
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友14762c5
2008-12-24
知道答主
回答量:61
采纳率:0%
帮助的人:16.4万
展开全部
这个键盘监听应该放到密码框或者输入ID的文本框,
addActionListener(...)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式