• Domingo 15 de Diciembre de 2024, 03:44

Autor Tema:  Captura De Teclas Mediante Onkeydown  (Leído 1766 veces)

Rh+

  • Nuevo Miembro
  • *
  • Mensajes: 1
    • Ver Perfil
Captura De Teclas Mediante Onkeydown
« en: Martes 10 de Agosto de 2004, 20:36 »
0
Muy buenas a todos, acabo de entrar a este foro y tiene muy buena pinta, asi que voy a empezar a dar la vara por aki :D (y a ayudar en lo que pueda!).

Bueno, pues el problema es que estoy haciendo un juego para la universidad basado en Visual C++ y en OpenGL, y no consigo capturar las teclas. La MSDN no me ha ayudado mucho porque me ha liao mas, y no acabo de entender como tengo que poner el metodo, que por su nombre creo que es OnKeyDown y como decirle lo que tiene que hacer con cada tecla porque se supone que a cada tecla le corresponde un numero, que no se cual es.

Si alguien puede decirme como se hace esto, o decirme donde encontrar el metodo o los numeros de las teclas lo agradecere enormemente  :smartass:

Un saludo a todos! B)

Davinia

  • Miembro activo
  • **
  • Mensajes: 49
    • Ver Perfil
Re: Captura De Teclas Mediante Onkeydown
« Respuesta #1 en: Miércoles 11 de Agosto de 2004, 21:42 »
0
hola,
no te preocupes que ya veras como te sale. Ayer mismo lo hice yo, asi que lo tengo fresquito en la memoria... :)

Ponte sobre el fichero en el que quieras poner el evento (yo lo tengo en la vista, es decir, la que tiene el sufijo View.cpp).
Pulsas boton derecho - classwizard - y si en el combo de arriba a la derecha no te aparece la clase en la que estas pues la seleccionas.
A continuacion buscas el evento ON_KEYDOWN (o algo asi) en la lista de la derecha (si no te aparece pulsas sobre el nombre de la clase que aparecera en la lista de la izquierda) y le das dobleclick y aceptas. Te aparecerá el evento en la lista de eventos. Haz doble click sobre el evento para irte al codigo.

Una vez estes en el codigo, pones dentro de la funcion que te responde al evento lo siguiente:

   switch(nChar)
   {
      case 37:  //flecha hacia la izquierda
                                      //tucodigo
      break;

   }
   CView::OnKeyDown(nChar, nRepCnt, nFlags);


el 37 como ves es para la flecha hacia la izquierda.
Puedes saber los codigos poniendo en el indice de la ayuda lo siguiente:
key code constants

suerte!!!!!!