Hola darkcuevas.
Podrías utilizar un
TTimer para simular la presión continua de una tecla y para tu segunda pregunta, aprovechar el evento
OnKeyPress del form.
Ejemplo : ( en un
TForm poné un
TTimer y un TEdit o un TMemo para visualizar el resultado )
Código Delphi
[-]
...
procedure TForm1.FormCreate(Sender: TObject);
begin
KeyPreview:= True;
Timer1.Enabled:= False;
Timer1.Interval:= 250; end;
procedure TForm1.Timer1Timer(Sender: TObject);
begin
keybd_event(Ord('A'),0,0,0); end;
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
var
Msg: TMsg;
begin
if (ssCtrl in Shift) and (Key = Ord('A')) then begin
PeekMessage(Msg, 0, WM_CHAR, WM_CHAR, PM_REMOVE); Timer1.Enabled:= not Timer1.Enabled; end;
end;
...
La repetición de pulsación de tecla se activa/desactiva con Ctrl+A.
Un saludo.