PDA

Ver la Versión Completa : Asignar Left Arrow Key a un BitBtn


pampitasnowman
28-04-2007, 03:49:51
Hola a todos! Estoy con una aplicación en Delphi 7, y necesito asignarles a dos BitBtn, las teclas de flecha izquierda y derecha respectivamente. Probé con la función onKeyPress del Form principal en donde están estos dos BitBtn:

procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char);
begin
if key = #13 then
bitbtn1Click(bitbtn1);
end;


En el ejemplo tengo la tecla enter (#13), y con eso funciona perfecto, le asigno letras de teclado alfabético y también funciona, pero cuando les pongo las flechas izquierda y derecha (#37 y #39), no sucede nada.
El form principal tiene la propiedad:

KeyPreview := True;

Muchas gracias por su tiempo, saludos!

roman
28-04-2007, 05:13:57
El evento KeyPress no detecta esas teclas. Debes usar KeyDown o KeyUp, y siempre es más claro usar las constantes declaradas en lugar de los valores numéricos.


procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
begin
case Key of
VK_LEFT: ...
VK_RIGHT: ...
end;
end;


// Saludos

pampitasnowman
28-04-2007, 05:29:56
Muchas gracias! Funcionó perfecto!