PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Mauszeigerkoordinaten rausbekommen???


Mackhack
17.01.2002, 16:23
Hi,

ich müsste die Koordinaten wissen wenn ich z. b. mit der Maus im IE auf der URL-Adressleiste bin.

So gehts nur im eigenen Form:

procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
Var
Point: TPoint;
a, b: Integer;
begin
GetCursorPos(Point);
a:= Point.X;
b:= Point.Y;
Form1.Canvas.TextOut(100, 100, IntToStr(a) + ´ x ´ + IntToStr(b));
end;

Kann mir jemand sagen (vielleicht mit etwas Code) wie ich das machen kann....

Vielen Dank...


Felix Kaiser
17.01.2002, 16:30
GerCursorPos ist schon richtig, ist eine API Funktion. Die arbeitet immer. Das Problem ist dein Prinzip, du verwendest das OnMouseMove von deinem Formular. Das wird aber nur aufgerufen wenn der Cursor sich über deinem Formular bewegt. Für alles was außerhalb liegt gibt es keinen Event. Nimm daher einen Timer und lass deine Funktionen mit GetCursorPos von so einem überwachen.

Mackhack
17.01.2002, 16:46
Hi,

ging ja schnell...

OK werde ich versuchen...

Geil funzt aber warum???

Onkelz
17.01.2002, 18:27
Wie schon gesagt:
Dein Programm muss den Focus haben und Du musst über Deinem Programm sein (Mauszieger), dann werden Dir die Koordinaten angezeigt, denn die function OnMouseMove wird sonst ja nicht usgelöst.

Onkelz

Felix Kaiser
17.01.2002, 23:10
OnMouseMove wird allgemein beim Bewegen des Mauscursors über ein Objekt ausgelöst, ob es oder eines seiner Elternobjekte den Fokus hat ist irrelevant.