C# Maus auf dem Desktop lokalisieren

ActiveO2

Ensign
Registriert
Feb. 2009
Beiträge
161
Hallo, :freaky:

wie kann ich die Maus außerhalb einer C#-Form lokalisieren.
Ich will sozusagen einen Mauszeiger Programmieren. Dafür brauche ich die Position meines Zeigers auf dem Desktop.
Die Form (PosX, PosY) sollte = Maus (PosX, PosY) sein.
Jemand eine Idee?


Grüße,

Active.
 
"System.Windows.Forms.Cursor.Position" sollte dir helfen.
Hiermit kannst du die Position der Maus auf dem Bildschirm abrufen.
 
ja,... google ist mir ein Begriff.
Habe bisher nichts Brauchbares gefunden.
Bin über Google nur soweit gekommen, dass zwar mein Mauszeiger lokalisiert wurde aber die Form nur reagiert wenn ich mit dem Zeiger AUF ihr bin.
Die Form hüpft sozusagen aus meinem Bildschirm.

Finde es immer ganz gut eine komplette Lösung zu haben, auch falls jemand mal nach dem Gleichen sucht.

Grüße


PS: "System.Windows.Forms.Cursor.Position" finde ich nicht
bisher haben mir diese Seiten geholfen (http://www.tsql.de/csharp/csharp_ma...ouseposition_getgursorpos_interopservices.php und http://www.mycsharp.de/wbb2/thread.php?threadid=61761)
 
Zuletzt bearbeitet:
Vielleicht solltest du nochmal genauer beschreiben was du eigentlich machen willst.
 
wie kann ich die Maus außerhalb einer C#-Form lokalisieren.
System.Windows.Forms.Cursor.Position;
oder
System.Windows.Forms.Control.MousePosition;
oder
low level mouse hook

Ich will sozusagen einen Mauszeiger Programmieren. Dafür brauche ich die Position meines Zeigers auf dem Desktop.
Die Form (PosX, PosY) sollte = Maus (PosX, PosY) sein.
this.Location = System.Windows.Forms.Cursor.Position;
oder
this.Location = System.Windows.Forms.Control.MousePosition;

Hierbei musst du allerdings theoretisch MousePos+1 da sonst der Zeiger
immer auf der Form ist. Oder deine Form routet den click halt durch.

Anbei ein wirklich "rudimentäres" VS2005 Beispielprojekt.
 

Anhänge

  • WindowsApplication1.7z
    8,1 KB · Aufrufe: 280
Danke!
Diese qualifizierte Art von Antwort habe ich gebraucht ;)
Das mit dem Location +1 habe ich noch nicht hinbekommen da Location ja nicht "variabel" sein darf
und "int" nicht zu System.drawing.point... addiert werden darf.
Habe aber auch noch nicht viel versucht.
Aber hatte ein ähnlich Problem schoneinmal, denke das werde ich noch lösen.
Danke.

Grüße,

Active
 
Schaue dir mal in der Form1.cs die Zeile 23 an.

Code:
MousePos.Offset (1, 1);
Hier wird das MousePos+1 schon für X und Y gemacht.
 
Zuletzt bearbeitet:
Zurück
Oben