Capturar la tecla Enter o cualquier otra tecla en un evento en Java

Hola a todos, hoy os explicare como capturar teclas concretas en un evento en Java. Es posible que quieras realizar alguna acción al pulsar algún botón concreto, como hemos visto hasta ahora con los eventos, el evento mas adecuado es el KeyListener.

Supongamos que queremos que aparezca un mensaje al pulsar Enter y si pulsamos Escape saldremos de la aplicación.

Podemos usar unas constantes muy útiles de KeyEvent, que empiezan por VK_ y siguen con el nombre de la tecla.

El código en principio sería así:

Si pruebas el siguiente código, no funcionara. Debemos usar el método setFocusable(false) del componente contentPane, lo añadimos, así quedaría:

Espero que os sea de ayuda. Si tenéis dudas, preguntad. Estamos para ayudarte.

Compartir

4 comentarios

  1. Carlos

    Muchas Gracias Informacion reciente y confiable has salvado a un estudiante de java

  2. Darwin

    Una pregunta.. estoy haciendo un juego de serpientes y escaleras en java… pero me piden que al presionar la tecla R o r se muestre de nuevo el menú inicial
    1. Iniciar Juego
    2. Regresar al juego

    pero que no se borre la partida actual (que quede en el turno del jugador en que iba) y al seleccionar 2. Regresar al juego .. seguir normalmente con los turnos

    Tengo algo de idea de usar un evento para saber si presionó la tecla R pero es en consola…

  3. Juan

    Darwin, creo que con la implementación de hilos junto con los eventos puedes lograr ello.
    Tambien creo que para esta fecha de contestar tu respuesta ya has logrado hacerlo, asi que cuentanos como lo has hecho.

  4. Brian

    Hola, estoy haciendo un programa que imprime el abecedario (un string) este se va a imprimiendo letra por letra (ciclo for) cada cierto tiemp(Thread. Sleep). Mi profesor me pide que al presionar una tecla este se detenga. ¿Que podría hacer?

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *


Warning: Trying to access array offset on value of type null in /home2/discodur/public_html/discoduroderoer/wp-content/themes/disto/single.php on line 539