Ver Mensaje Individual
  #2  
Antiguo 30-01-2011
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Reputación: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
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;  // 1/4 seg (o lo que gustes)
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
  keybd_event(Ord('A'),0,0,0);  // simular tecla presionada
end;

procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
var
  Msg: TMsg;
begin
  if (ssCtrl in Shift) and (Key = Ord('A')) then  // Ctrl + A
  begin
    PeekMessage(Msg, 0, WM_CHAR, WM_CHAR, PM_REMOVE); //Quitar Beep
    Timer1.Enabled:= not Timer1.Enabled;  // Activar/Desactivar TTimer
  end;
end;
...

La repetición de pulsación de tecla se activa/desactiva con Ctrl+A.


Un saludo.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....

Última edición por ecfisa fecha: 30-01-2011 a las 12:25:08.
Responder Con Cita