Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Código virtual de las teclas..... (https://www.clubdelphi.com/foros/showthread.php?t=40203)

KAYO 09-02-2007 13:57:51

Código virtual de las teclas.....
 
Necesito utilizar las teclas de función F1...F10 con otra tecla alternativa, algo como: Shift+F5 ó Crtl+F5 ó Alt+F5.

Me podríais indicar donde puedo obtener los CODIGOS VIRTUALES de estas teclas?

Agradezco de nuevo vuestras respuestas....

dec 09-02-2007 14:53:24

Hola,

Depende de dónde quieras realizar la comprobación. En el evento "OnKeyUp" de un formulario la cosa podría quedar más o menos así:

Código Delphi [-]
procedure TForm1.FormKeyUp(Sender: TObject;
 var Key: Word; Shift: TShiftState);
begin
  if (Key = VK_F5) and (ssCtrl in Shift) then
  begin
    ShowMessage('Pulsaste CTRL + F5');
  end;
end;

En el evento de un "TTimer" la cosa podría tal vez quedar como sigue:

Código Delphi [-]
procedure TForm1.Timer1Timer(Sender: TObject);
begin
  if (GetKeyState(VK_CONTROL) < 0)
   and (GetKeyState(VK_F5) < 0) then
  begin
    ShowMessage('Pulsaste CTRL + F5');
  end;
end;

KAYO 09-02-2007 16:48:21

thanx too much

adonai 28-02-2007 21:46:22

Todas las teclas
 
holas amigos del foro, saben estoy interesado en saber el nombre de todas las teclas que hay en el teclado como por ejmplo la tecla F5 se llama VK_F5 la tecla control VK_CONTROL y asi de todas y ahora como tambien saber para que sirve la funcion GetKeyState y por que la compara si es menor a 0 podrian explicarmelo muchisimas gracias
:( :) :) :D

jhonny 28-02-2007 21:52:48

Busca la lista en el archivo Win32.hlp y la palabra clave Virtual-Key Codes

En cuanto a lo otro GetKeyState es para averiguar el estado de dichas teclas.

seoane 28-02-2007 22:05:17

Aquí publique una lista con las teclas, su correspondiente constante y su valor en hexadecimal.

http://www.clubdelphi.com/foros/show...0&postcount=11

jhonny 28-02-2007 22:15:53

Que gran e interesante lista... :eek:

vtdeleon 01-03-2007 01:13:44

Para comodidad podrías utilizar este programita. Quizas no sea tan completa como la lista citada, pero es comoda:D.

Saludos


La franja horaria es GMT +2. Ahora son las 00:03:37.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi