ubiquitour.com

Cómo detectar una pulsación en Java

Cómo detectar una pulsación en Java

Aunque más necesidades para obtener entrada del usuario se manejan muy fácilmente en oscilación por componentes estándar, por ejemplo, conseguir texto a través de un componente JTextField--a veces es necesario obtener la clave exacta presiona del usuario. Tal vez una combinación de teclas específica hará que una determinada acción, o tal vez desea evitar ciertos movimientos claves de tener su efecto predeterminado, como lo que permite sólo caracteres alfabéticos en un cuadro de texto. Independientemente de la situación, la tecla el usuario es sencillo.

Instrucciones

1 Crear una clase simple que crea y muestra un JFrame por ahora:

importación java.awt.Dimension;

importación java.lang.reflect.InvocationTargetException;

Import javax.swing.JFrame;

Import javax.swing.SwingUtilities;

final clase KeyPressTester implementa Runnable {}

public static void main(String[] args) throws InterruptedException, InvocationTargetException {

SwingUtilities.invokeAndWait(new KeyPressTester());

}

@Override

public void run() {

frame = new JFrame("KeyPress Tester");

frame.setSize(new Dimension(800, 600));

frame.setVisible(true);

}

private JFrame frame;

}

2 Modificar el método run() para agregar un KeyListener al cuadro con la siguiente implementación:

frame.addKeyListener(new KeyListener() {

@Override

public void keyTyped(KeyEvent e) {

}

@Override

public void keyReleased(KeyEvent e) {

}

@Override

public void keyPressed(KeyEvent e) {

System.out.println("Key Character: " + e.getKeyChar() + "; Key Code: " + KeyEvent.getKeyText(e.getKeyCode()));

}

});3

Compilar y ejecutar el programa. Si usted presiona una tecla cuando el marco tenga el foco, veremos salida de consola que describe la tecla que usted oprimió, incluyendo ambos el carácter de texto (si está disponible) y el texto de la clave, tales como Mayús, Ctrl, retroceso, etc..

Consejos y advertencias

  • Revisión de los métodos disponibles en el parámetro KeyEvent. Se puede utilizar para indicar que el usuario presiona una tecla modificadora, como "Alt" o "Ctrl", junto con la clave especificada y diferenciar, por ejemplo, las teclas de desplazamiento izquierdas y derecha. También explorar los otros dos eventos en el KeyListener, keyTyped y keyReleased, atrapar versiones ligeramente diferentes de los eventos de teclado y puede ser más aplicables en diferentes situaciones.