#1 23. Mai 2008 CurserPosition ermitteln Halo Leute ich versuche mit Delphi die genaue Curserpostion zu ermitteln. Bis jetzt sieht es so aus: Code: procedure TForm1.Timer1Timer(Sender: TObject); begin Label1.Caption:=IntToStr(Mouse.CursorPos.x); Label2.Caption:=IntToStr(Mouse.CursorPos.y); end; Allerdings sind die Werte für mich unnütz da max x=1248 y= 1024. Er geht also nach der Auflösung. Ich bräuchte aber "DirectX Werte" oder wie die heißen.. Ich möchte nämlich meinen Curser von meiner G15 bewegen lassen... Es sieht etwa so bei der G15 aus: Code: <event type="mousemove" dx="40400" dy="39000"/> Also ein spektrum von 0 bis 65535 Ich würde mich über rasche Hilfe sehr freuen. MfG EnnyStar + Multi-Zitat Zitieren
#2 23. Mai 2008 AW: CurserPosition ermitteln Cursor-Positionen sind erstmal immer Auflösungs-Abhängig. Du kannst die natürlich hochrechnen. Hab das mal so geschrieben, kann sein dass da noch Fehler drin sind. Code: [B]procedure[/B] _GetCursorPos([B]out[/B] pos: TPoint); [B]var[/B] p: TPoint; pX, pY: WORD; [B]begin[/B] GetCursorPos(p); p := ClientToScreen(p); pX := (p.x [B]div[/B] Screen.Width) * [COLOR="Blue"]100[/COLOR]; pY := (p.y [B]div[/B] Screen.Height) * [COLOR="Blue"]100[/COLOR]; pos.x := (HIGH(WORD) [B]div[/B] 100) * pX; pos.Y := (HIGH(WORD) [B]div[/B] 100) * pY; [B]end[/B]; Die Prozentrechnung ist mit sicherheit falsch aber probier mal so =) Hier ist en Beispiel fals das funktioniert ^^ Code: [B]procedure[/B] TForm1.Timer1Timer(Sender: TObject); [B]var[/B] p: TPoint; [B]begin[/B] _getcursorpos(p); Label1.Caption:=IntToStr(p.x); Label2.Caption:=IntToStr(p.y); [B]end[/B]; + Multi-Zitat Zitieren