Activating a Keystroke When Any Child Component Has Focus : KeyStroke « Swing Event « Java Tutorial






import java.awt.event.ActionEvent;

import javax.swing.AbstractAction;
import javax.swing.Action;
import javax.swing.JButton;
import javax.swing.JComponent;
import javax.swing.KeyStroke;

public class Main {
  public static void main(String[] argv) throws Exception {
    JButton component = new JButton();
    MyAction action = new MyAction();

    component.getInputMap(JComponent.WHEN_ANCESTOR_OF_FOCUSED_COMPONENT).put(
        KeyStroke.getKeyStroke("F2"), action.getValue(Action.NAME));
  }
}

class MyAction extends AbstractAction {
  public MyAction() {
    super("my action");
  }

  public void actionPerformed(ActionEvent e) {
    System.out.println("hi");

  }
}








15.22.KeyStroke
15.22.1.KeyStroke Class
15.22.2.Creating a KeyStroke
15.22.3.Registering a KeyStrokeRegistering a KeyStroke
15.22.4.KeyStroke Sample: VKEnterKeyStroke Sample: VKEnter
15.22.5.KeyStroke Sample: function key and Shift keyKeyStroke Sample: function key and Shift key
15.22.6.KeyStroke Sample: Space keyKeyStroke Sample: Space key
15.22.7.List keystrokes in the WHEN_ANCESTOR_OF_FOCUSED_COMPONENT input map of the component
15.22.8.List keystrokes in the WHEN_IN_FOCUSED_WINDOW input map of the component
15.22.9.Converting a KeyStroke to a String
15.22.10.Creating a KeyStroke and Binding It to an Action
15.22.11.KeyStroke.getKeyStroke('F2')
15.22.12.Overriding - key
15.22.13.Override $ key
15.22.14.Overriding space key
15.22.15.Set java.awt.Container.getFocusTraversalKeys(int id)
15.22.16.Activating a Keystroke When Any Component in the Window Has Focus
15.22.17.Remove all forward focus traversal keys for the application
15.22.18.Remove all backward focus traversal keys for the application
15.22.19.Activating a Keystroke When Any Child Component Has Focus
15.22.20.Bind a keystroke to shift-space
15.22.21.KeyStroke to String
15.22.22.Get Key Text