Einzelnen Beitrag anzeigen

Saturos

Registriert seit: 15. Dez 2007
Ort: Altenburg
13 Beiträge
 
Delphi 7 Personal
 
#19

Re: Tastendruck -> Mausklicks

  Alt 16. Dez 2007, 12:10
Also in der CodeLibrary stand, dass man auch eine einzelne Taste definieren kann. Diese letzte vereinbarte Taste muss laut Delphi vom Typ cardinal sein. Das dürften aber doch dann nur "Sondertasten", wie Pfeil auf oder - ab sein oder irre ich mich da?
Beim Testen habe ich herausgefunden, dass das Klicken außerhalb des Forms auch funktioniert, mein Problem ist nur den Timer wieder zu disabeln. Bis jetzt sieht das folgendermaßen aus:
Delphi-Quellcode:
var
  ...
  curs:tpoint;
  klick:boolean;

procedure TForm1.Timer1Timer(Sender: TObject);
var i:integer;
begin
 for i:=1 to 2 do begin
  mouse_event(MOUSEEVENTF_LEFTDOWN, Curs.x, Curs.y, 0, 0);
  mouse_event(MOUSEEVENTF_LEFTUP, Curs.x, Curs.y, 0, 0)
 end;
end;

procedure TForm1.WMHotKey(var Message:TMessage);
begin
   If Message.wParam=HotKeyID then begin
    if not klick then begin
     klick:= true;
     GetCursorPos(curs);
     if anaus=true then
      timer1.Enabled:=true
    else if klick then
     timer1.Enabled:=false;
    end;
   end;
end;
Die Variable klick ist am Anfang false und wird bei Aktivierung des Timers auf true gesetzt. Das würde also bedeuten, dass beim nächsten Mal, wenn der Hotkey gedrückt wird die zweite Bedingung erfüllt ist und der timer wieder gestoppt wird. Problem: beim erneuten Drücken des Hotkeys, wird der Timer trotzdem nicht gestoppt .
Konrad
Ich würde die Welt ändern, aber Gott rückt den Quellcode nicht raus.
  Mit Zitat antworten Zitat