DruckenMister WongFacebook

Mausbewegungen simulieren

System Win9x, WinNT, Win2000, WinXP, Vista, Win7
Ab Delphi-Version Delphi 1
Letzte Änderung 28.09.2010

Folgende Prozedur bewegt die Maus von der aktuellen Position zu den Koordinaten, die der Prozedur als Parameter übergeben werden. Der dritte Parameter gibt die Zeit in Millisekunden an, die zwischen jeder Bewegung gewartet werden soll.


procedure MoveMouse(X, Y: Integer; Speed: Cardinal=1);
var
  PosX, PosY : integer;
  mPos : TPoint;
begin
  PosX := X;
  PosY := Y;

 Repeat
   sleep(speed);
   Application.Processmessages;
   GetCursorPos(mPos);
   with mPos do
   begin
     If x > PosX then
       dec(x)
     else
     If x < PosX then
       inc(x);
     If y > PosY then
       dec(y)
     else
     If y < PosY then
       inc(y);
     SetCursorPos(x,y);
   end;
  until (mPos.X=PosX) and (mPos.Y=PosY);
end;