我处于一种情况下,我有一个类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。