PDA

Ver la Versión Completa : Accion con botones del teclado


krewer
05-03-2012, 19:43:03
Hola amigos, miren se me ocurrio una idea y no se si sea viable. por ejemplo yo podria hacer un codigo donde yo al presionar un boton en mi form, seleccione un boton del teclado y este quede en modo (presionado) hasta que yo le quite la opcion?

en verdad no se si se podra

de todas maneras muchas gracias :D

ecfisa
05-03-2012, 20:11:12
seleccione un boton del teclado y este quede en modo (presionado) hasta que yo le quite la opcion?
Hola krewer.

Si te referis a una tecla, probá de este modo:

procedure TForm1.btCtrlPressClick(Sender: TObject);
begin
keybd_event(VK_CONTROL,0,0,0);
end;

procedure TForm1.btCtrlReleaseClick(Sender: TObject);
begin
keybd_event(VK_CONTROL,0,2,0);
end;

Busca en la ayuda de Delphi por los diferentes códigos de teclado en: Virtual key codes.

Saludos.

krewer
06-03-2012, 22:37:45
Gracias por el codigo eficsa, ahora la pregunta es donde encuentro el evento TForm1.btCtrlPressClick??

ecfisa
06-03-2012, 22:54:38
Hola krewer.

Poné dos TButton en el form y hacé doble click sobre Button1, deberías ver algo similar a esto:

procedure TForm1.Button1Click(Sender: TObject);
begin

end;

Copia y pega entre begin y end el código:
keybd_event(VK_CONTROL,0,0,0);
Que es el encargado de presionar la tecla especificada.
Desde el Object Inspector cambia la propiedad Name de Button1 por el nombre de tu gusto. (En mi caso elegí : btCtrlPress)

Repite los pasos para Button2 con la salvedad que tendrás que copiar/pegar el código:
keybd_event(VK_CONTROL,0,2,0);
Ya que este se encarga de liberar la tecla presionada.

Saludos.