Einzelnen Beitrag anzeigen

dominikkv

Registriert seit: 30. Sep 2006
Ort: Gundelfingen
1.109 Beiträge
 
Delphi 2007 Professional
 
#4

Re: Länge eines Tastendrucks speichern und ausführen?

  Alt 4. Okt 2007, 08:37
Delphi-Quellcode:
var
  TasteGedrueckt: Boolean;
  ZeitVergangen: Cardinal;


procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if TasteGedrueckt then
    exit;
  ZeitVergangen := GetTickCount;
  TasteGedrueckt := True;
end;

procedure TForm1.FormKeyUp(Sender: TObject; var Key: Word; Shift: TShiftState);
begin
  showmessage(Format('Die Taste wurde %f Sekunden gedrückt!', [(GetTickCount - ZeitVergangen) / 1000]));
  TasteGedrueckt := False;
end;
Und dann halt noch KeyPreview auf deiner Form aktivieren damit die Ereignisse auch aufgerufen werden wenn mal eine andere Komponente auf der Form den Fokus hat.
Außerdem geht das nur wenn dein Programm grad (in Windows) aktiv ist, also den Fokus hat!
Dominik
Wer anderen eine Grube gräbt, hat ein Gruben-Grab-Gerät!
  Mit Zitat antworten Zitat