Press a key pragmatically : GUI Utilities « Swing JFC « Java

Press a key pragmatically


import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;

public class KeyUtils {
  public static void pressKey(Component component ) {
    if (component.getKeyListeners().length > 0) {
      KeyEvent event = new KeyEvent(component, KeyEvent.KEY_PRESSED, 0, 1, 32, (char)32);
      for (int i = 0; i < component.getKeyListeners().length; i++) {
        KeyListener keyListener = component.getKeyListeners()[i];

    if (JComponent.class.isInstance(component)) {
      KeyStroke keyStroke = KeyStroke.getKeyStroke(32, 1);
      final ActionListener actionForKeyStroke = ((JComponent)component).getActionForKeyStroke(keyStroke);
      if (actionForKeyStroke != null) {
        actionForKeyStroke.actionPerformed(new ActionEvent(component, KeyEvent.KEY_PRESSED, ""));


Related examples in the same category

1.Utilities for GUI work.
2.A utility class to tune the Metal look and feel.
3.Renders a component into an image
4.Positions the specified dialog at a position relative to its parent.
5.Computes the maximum bounds of the current screen device. If this method is called on JDK 1.4, Xinerama-aware results are returned.
6.Computes the center point of the current screen device.
7.Positions the specified frame at a relative position in the screen, where 50% is considered to be the center of the screen.
8.Positions the specified frame in the middle of the screen.
9.Positions the specified frame at a random location on the screen while ensuring that the
10.AWT Utilities
11.Center On Screen
12.Center Within Parent
13.Center window
14.Calculates preferred max height for the given components without checking isVisible
15.Calculates preferred max width for the given components without checking isVisible
16.Is Focusable
17.Loading the given image
18.Set All Opaque
19.Set Frame Location Relative To
20.Set Wait Cursor
21.Shadow Popup Border
22.Unit conversions
23.Unit measure
24.Get Point For Centering
25.Get Point For Staggering