Enabling an Action : Action « 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.JFrame;
import javax.swing.JTextField;
import javax.swing.KeyStroke;

public class Main {
  public static void main(String[] argv) throws Exception {
    final Action action = new AbstractAction("Action Name") {
      public void actionPerformed(ActionEvent evt) {
        System.out.println("action");
      }
    };
   
    JFrame frame = new JFrame();
    JButton button = new JButton(action);

    JTextField textfield = new JTextField();
    textfield.getInputMap(JComponent.WHEN_FOCUSED).put(KeyStroke.getKeyStroke("F2"),
        action.getValue(Action.NAME));
    textfield.getActionMap().put(action.getValue(Action.NAME), action);
  }
}








15.3.Action
15.3.1.AbstractAction Lookup Property Keys
15.3.2.Creating an Action
15.3.3.Action Usage ExampleAction Usage Example
15.3.4.extends AbstractActionextends AbstractAction
15.3.5.Disable an ActionDisable an Action
15.3.6.Get and set Action Command
15.3.7.Register action
15.3.8.ActionMap javax.swing.JComponent.getActionMap()
15.3.9.Map actions with keystrokes
15.3.10.Enabling an Action
15.3.11.Listing the Actions in a Component