Pascal/Turbo Pascal - Como usar teclas especiales como F1...

 
Vista:

Como usar teclas especiales como F1...

Publicado por Minor (13 intervenciones) el 07/06/2003 09:29:33
Hola. Estoy haciendo un programa pero necesito programarle algunas funciones a las teclas F1,F2... El problema es que no he logrado hacerlo. Por ejemplo, quiero que cuando el usuario presione F1 le muestre en pantalla unas instrucciones sobre el programa.
Apreciaria muchisimo si alguno me pudiera ayudar a hacer esto.
Nota: yo ya tengo los codigos ascii de esas teclas pero no he logrado programar correctamente el procedimiento para que me haga lo mencionado anteriormente.

Muchas gracias.
Minor.
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:Como usar teclas especiales como F1...

Publicado por Diego Romero (786 intervenciones) el 07/06/2003 10:11:08
Las teclas especiales (también llamadas teclas grises) como las F, flechas de cursor, insert, supr, etc..., devuelven dos códigos, el primero de ellos es siempre cero y a continuación el código que le corresponde.
Usa este ejemplo para saber sus códigos:
uses crt;
var
key:byte;
begin

repeat
key:=ord(readkey);
if key = 0 then
begin
write('tecla especial ');
key:=ord(readkey);
end;
writeln(key);
until key=27;

end.

Algunas teclas no devuelven codigo alguno, por ejemplo Alt, Control, Shift, Bloq Mayus, las teclas F11 y F12 no son detectadas por TP. Sí son detectadas las combinaciones de dos teclas Alt + (cualquier tecla), Control + (cualquier tecla), Shift + (cualquier tecla).
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

RE:Como usar teclas especiales como F1...

Publicado por Minor (13 intervenciones) el 07/06/2003 10:17:52
Ok, gracias por tu pronta respuesta pero aunque ya se como leer el codigo ascii de dichas teclas; aun no se como hacer para que cuando el usuario presione la tecla f? ejecute algun procedimiento. Por ejemplo: al presionar F1 muestre alguna informacion en la pantalla.
Me podes ayudar?
Muchas gracias!
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

RE:Como usar teclas especiales como F1...

Publicado por Diego Romero (786 intervenciones) el 07/06/2003 20:09:57
Ejem, creo que es evidente :)
Key:=Ord(Readkey);
if Key = 0 then { ¿es tecla especial? }
begin
Key:=Ord(Readkey); { Ok, tomo el segundo codigo }
if Key = 59 then { ¿ es F1? }
{ Mostrar lo que haya que mostrar si el usuario presionó F1 }
end; { if Key = 0 }
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