Hola ElDuc.
En Delphi 7 los
virtual key codes no son captados en el evento
OnKeyPress sino en
OnKeyDown. Lo mismo sucede en Delphi 2010.
Para comprobar esto, podes realizar una prueba con un form en blanco:
Código Delphi
[-]
...
procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char);
begin
ShowMessage('KeyPress');
end;
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
begin
case Key of
VK_LEFT : ShowMessage('Key Left');
VK_RIGHT: ShowMessage('Key Right');
VK_UP : ShowMessage('Key Up');
VK_DOWN : ShowMessage('Key Down');
VK_F1 : ShowMessage('Key F1');
end;
end;
Los diferentes códigos virtuales de teclas los encontras en la ayuda de delphi buscando por "Virtual key codes".
Saludos.