我处于一种情况下,我有一个类ActionFactory,该类产生要在菜单项和按钮中使用的ActionListener。现在,我想将其中一些操作绑定到键。


    KeyStroke controlS = KeyStroke.getKeyStroke
        (KeyEvent.VK_S,modifierKey,false);
    panel.getInputMap
        (JComponent.WHEN_IN_FOCUSED_WINDOW).put(controlS, "CTRL_S");
    panel.getActionMap().put
        ("CTRL_S", ActionFactory.getAction1());


但是动作映射期望一个AbstractAction,现在有一种在这种情况下使用ActionListener的方法,我不想创建重复的函数来返回AbstractAction。

最佳答案

我看到的最简单的方法是:更改ActionFactory,让它创建Actions而不是ActionListeners。

10-08 14:44