我遇到的情况是我有一个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的重复函数,而只是为了这个。
答案 0 :(得分:1)
我能看到的最简单的方法是:更改ActionFactory,让它创建Actions而不是ActionListeners。