What is the difference between registerKeyboardAction(…) and getInputMap().put(…) + getActionMap().put(…)?
问题 What is the difference between these two methods: getInputMap(JComponent.WHEN_FOCUSED).put(KeyStroke.getKeyStroke( "pressed F10"), "someAction"); getActionMap().put("someAction", new AbstractAction() { @Override public void actionPerformed(ActionEvent e) { //Do something } }); and: registerKeyboardAction(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { //Do something } }, KeyStroke.getKeyStroke("pressed F10"), JComponent.WHEN_FOCUSED); 回答1: There is no difference,