Adding an InputMap to a Component : InputMap « Swing Event « Java Tutorial






import javax.swing.InputMap;
import javax.swing.JButton;
import javax.swing.JComponent;
import javax.swing.KeyStroke;

public class Main {
  public static void main(String[] argv) throws Exception {
    InputMap inputMap = new InputMap();

    inputMap.put(KeyStroke.getKeyStroke("F2"), "actionName");

    JButton component = new JButton("button");
    
    inputMap.setParent(component.getInputMap(JComponent.WHEN_FOCUSED));
    component.setInputMap(JComponent.WHEN_FOCUSED, inputMap);

  }
}








15.4.InputMap
15.4.1.void InputMap.put(KeyStroke keyStroke, Object actionMapKey)
15.4.2.InputMap javax.swing.JComponent.getInputMap(int condition)
15.4.3.Press shift space or shift F2 to move the focus to the previous focusable component.
15.4.4.Modify a component: press space bar or F2 to move focus to next focusable component.
15.4.5.Adding an InputMap to a Component
15.4.6.Sharing an InputMap or an ActionMap Between Two Components
15.4.7.Overriding Default Typed Key Bindings in a JTextComponent
15.4.8.Disable a character so that no action is invoked
15.4.9.Prevent the space from being inserted when shift-space is pressed
15.4.10.Install your own action to text component