Java:如何更改setDefaultButton()的激活事件键?

时间:2014-01-26 03:23:20

标签: java jframe jbutton

有没有办法更改setDefaultButton()的默认激活事件键?默认密钥为 ENTER

这是场景:在登录窗口中,有两(2)个按钮,一个用于登录,另一个用于退出。将登录按钮设置为setDefaultButton()是一个好主意,但我希望有另一个激活事件键 ESCAPE 来响应退出按钮。

谢谢!

1 个答案:

答案 0 :(得分:0)

这是你应该做的事情

InputMap inputMap = panel.getInputMap(JComponent.WHEN_ANCESTOR_OF_FOCUSED_COMPONENT);
inputMap.put(KeyStroke.getKeyStroke(KeyEvent.VK_ESCAPE, 0), "exitAction");
panel.getActionMap().put("exitAction", exitAction);

Action exitAction = new AbstractAction() {
        public void actionPerformed(ActionEvent e) {
            //what ever happen on exit goes here
        }
    };