一个登陆界面键盘Enter回车“退出”按钮,弹出消息框“是否要退出”,键盘Enter回车“是”就退出,键盘Enter回车“否”就返回到登陆界面。我用的是JOptionPane.showComfirmDialog(null,"是否要退出","友情提示",JOptionPane.YES_OPTION),但是效果不完善,谁能帮我完善下啊或是谁有更好的方法来做。

解决方案 »

  1.   

    你要的是不是这个样子的!?
    import javax.swing.*;
    import java.awt.*;
    import java.awt.event.*;public class EnterTest {
    public static void main(String[] args) {
    new EnterTestFrame();
    }
    }class EnterTestFrame extends JFrame {
    JPanel p1 = new JPanel();
    JPanel p2 = new JPanel();
    JPanel p3 = new JPanel();
    JLabel nameLab = new JLabel("UserName:");
    JLabel passwordLab = new JLabel("PassWord:");
    JTextField tf1 = new JTextField(10);
    JPasswordField pf = new JPasswordField(10);
    JButton inButton = new JButton("登录");
    JButton outButton = new JButton("退出");

    EnterTestFrame() {
    this.setLayout(new GridLayout(3,1));
    outButton.addActionListener(new BtListener());
    p1.setLayout(new GridLayout(1,2));
    p2.setLayout(new GridLayout(1,2));
    p3.setLayout(new GridLayout(1,2));
    p1.add(nameLab);
    p1.add(tf1);
    p2.add(passwordLab);
    p2.add(pf);
    p3.add(inButton);
    p3.add(outButton);
    this.add(p1);
    this.add(p2);
    this.add(p3);
    this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    pack();
    this.setVisible(true);
    }

    private class BtListener implements ActionListener {
    public void actionPerformed(ActionEvent e) {
    int select = JOptionPane.showConfirmDialog(null,"真的要退出吗?","友情提示",JOptionPane.YES_NO_OPTION );
    if(select == JOptionPane.YES_OPTION) {
    System.exit(0);
    }
    }
    }
    }
      

  2.   

    你的全部操作都是靠“Enter”键来控制么?那你怎么知道他这一步“Enter”键是要干吗?
      

  3.   

    我要的是键盘操作的啊,键盘回车键Enter,来实现
      

  4.   

    你的“取消”、“是”、“否”都是用“ENTER”一个键来操作?那你怎么知道用户要做什么?
      

  5.   

    哥们
    你到底要什么要求啊
    茫然了有点
    要是Enter一个键完成的话就是对每个组件进行焦点事件控制
    应该挺简单的