Java - Capturar evento de tecla que se mantiene precionada

 
Vista:
sin imagen de perfil

Capturar evento de tecla que se mantiene precionada

Publicado por Rodrigo (5 intervenciones) el 06/10/2016 19:44:43
Buenas tardes! Antes que nada quiero aprovechar a saludarlos, soy nuevo en el foro y me encuentro en el camino de aprendizaje de POO.
Les comento, estoy en proceso de un vídeo juego. La cuestión es que no se como hacer para capturar el evento de mantener una tecla presionada, y que mi personaje avance. Hasta ahora lo que hice fue solo presionar la tecla , capturar el evento, y ahí mover a mi personaje. Pero, como hago para dejar la tecla presionada y que avance constantemente?

Muchísimas gracias de antemano por la ayuda!


PD : trabajo con Eclipse.

Saludos!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 87
Ha aumentado su posición en 2 puestos en Java (en relación al último mes)
Gráfica de Java

Capturar evento de tecla que se mantiene precionada

Publicado por Tomas (76 intervenciones) el 06/10/2016 22:15:50
Tenes que hacer que la clase utilize la interfaz KeyListener, la cual tiene el metodo keyPressed()

1
2
3
4
5
6
7
public Miclase extends OtraClase implements KeyListener{
 
@override
public void keyPressed(KeyEvent e){
}
 
}

Entonces cuando mantengas apretado se va a ejecutar lo que esté a dentro de ese metodo. Acordate agregarle al componente el 'escuchador' : personaje.addKeyListener(this)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil

Capturar evento de tecla que se mantiene precionada

Publicado por Rodrigo (5 intervenciones) el 06/10/2016 22:21:13
Solucionado! Muchas gracias por tu ayuda!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 87
Ha aumentado su posición en 2 puestos en Java (en relación al último mes)
Gráfica de Java

Capturar evento de tecla que se mantiene precionada

Publicado por Tomas (76 intervenciones) el 06/10/2016 22:35:02
Si lo solucionaste genial, pero me acabo de dar cuenta que lei mal la pregunta:

Pero, como hago para dejar la tecla presionada y que avance constantemente?

Por una parte vas a necesitar un bucle infinito:

while (true){
personaje.caminar();
}
Por otra, una vez esté caminando tiene que haber otra clase haciendo otra cosa. Necesitaras varios hilos ( Threads ) para hacer mas cosas a la vez.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar