Java Swing中键盘输入事件及处理 我想在我的frame里面实现在界面内只要点击回车就等同于单击登陆按钮 请问该怎么实现? 在哪个里面用keyPressed 框架?还是this还是什么? 或者有其他方法实现 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 只要button加上keyPressed就可以啊 按回車默認就是點擊這個按鈕啊~~ frame.getRootPane().setDefaultButton(loginButton); public class Tdlksfjslkdf { JFrame jf = null; JButton jb1,jb2; public Tdlksfjslkdf(){ jf = new JFrame(); jb1 = new JButton(); jb2 = new JButton(); jb1.addKeyListener(new KeyAdapter(){ public void keyPressed(KeyEvent e) { JOptionPane.showMessageDialog(jf, "11111111111111111111"); } }); jb2.addKeyListener(new KeyAdapter(){ public void keyPressed(KeyEvent e) { JOptionPane.showMessageDialog(jf, "2222222222222222222222"); } }); Container cp = jf.getContentPane(); cp.add(jb1,BorderLayout.NORTH); cp.add(jb2,BorderLayout.SOUTH); jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); jf.getRootPane().setDefaultButton(jb2); jf.pack(); jf.setLocationRelativeTo(null); jf.setVisible(true); } public static void main(String []a){ new Tdlksfjslkdf(); }}樓上的你好,你可以看看我這個代碼,即使設置了jf.getRootPane().setDefaultButton(jb2); 可是輸出的時候還是產生11111111111的效果,為什么呢? 登录逻辑放keyPressed里不就得了 在构造函数public Tdlksfjslkdf()的最后加上jb2.requestFocus();就可以了。 因为jf.getRootPane().setDefaultButton(jb2); 根本不是这么用的 o 谢谢哈 ~~` 要是在一个 JTextField 输入结束后 按回车就自动到某个按钮 不设置监听器的情况下能实现么?getRootPane().setDefaultButton()方法是干什么用的? e.getKeyCode()得到输入的键盘值如果为10激活登陆事件 java数据包定议,这样写对不???? rmi现在用的人还多吗? java 树形结构数据检索问题 数据库连接异常,怎么看sql2000端口号 在JFrame上失去监听功能,为什么?向各位请教(急) 最最最初级的问题,希望各位不吝赐教 如何避免这可恶的东西????请进 遍历list的不同方法有哪些 线程问题 新开一贴,JTable到底有getSelectedRow()这个方法吗? javaONE是什么啊 有人能给点相关质料么
JFrame jf = null;
JButton jb1,jb2;
public Tdlksfjslkdf(){
jf = new JFrame();
jb1 = new JButton();
jb2 = new JButton();
jb1.addKeyListener(new KeyAdapter(){
public void keyPressed(KeyEvent e) {
JOptionPane.showMessageDialog(jf, "11111111111111111111");
}
});
jb2.addKeyListener(new KeyAdapter(){
public void keyPressed(KeyEvent e) {
JOptionPane.showMessageDialog(jf, "2222222222222222222222");
}
});
Container cp = jf.getContentPane();
cp.add(jb1,BorderLayout.NORTH);
cp.add(jb2,BorderLayout.SOUTH);
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
jf.getRootPane().setDefaultButton(jb2);
jf.pack();
jf.setLocationRelativeTo(null);
jf.setVisible(true);
}
public static void main(String []a){
new Tdlksfjslkdf();
}
}樓上的你好,你可以看看我這個代碼,即使設置了jf.getRootPane().setDefaultButton(jb2); 可是輸出的時候還是產生11111111111的效果,為什么呢?
jb2.requestFocus();就可以了。
因为jf.getRootPane().setDefaultButton(jb2); 根本不是这么用的
如果为10激活登陆事件