C/Visual C - Nesecito incluir un "case" que obedezca teclas

 
Vista:

Nesecito incluir un "case" que obedezca teclas

Publicado por Kily (1 intervención) el 06/11/2004 02:20:33
Estoy creando un programa de admistración de datos bien simple
(por supuesto en memoria, nada de archivos)
y tengo entendido que dentro de los case de un switch se puede incluir
numeros para que obedezcan a teclas hasta ahora me han dicho que
80 es flecha arriba
72 flecha abajo
13 enter
pero no los puedo utilizar. Hay que incluir algún archivo de cabecera??
Al compilar no me da errores ni advertencias
hay una función que te permite ver la hora y en dia que comienza asi
while(salir!=13)
salir es de tipo int, si pulso enter debería salir de esa función y volver al menú principal pero el programa queda ahí.
alguien me puede ayudar??
ah... me olvidaba donde puedo conseguir una lista de esto y como se llama (si es que tiene algún nombre en especial)
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

RE:Nesecito incluir un

Publicado por fernando.gomez (1603 intervenciones) el 06/11/2004 04:29:19
Ok, vamos por partes. Los números que entras es en realidad código ASCII (American Standard Code for Information Interchange, si la memoria no me falla). Cada tecla tiene asignado un número que van desde el 0 al 255 para ASCII 1 y hasta 511 para ASCII 2. Un char es un tipo de entero que te representa estos números, por ello puedes tratar un char como un int (y viceversa) siempre que estés dentro del rango.

Segundo, el 13 efectívamente es para un enter. Sin embargo, en Windows, el "Enter" que conocemos es en realidad un enter (13) y un retorno de carrete (10). Así que aguas.

Finalmente, según yo, tienes que igualar a VK_RETURN. Pero estoy revisando y VK_RETURN está definido como 0x0D, que es trece. En teoría te debería funcionar... intenta igualar a VK_RETURN. Si no, intenta igualar a '\n' (nota las comillas simples), que te regresa el código ascii del enter.

Si no funciona, avísame para investigar más.

Salutes.
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