Ich benutze diese Funktion, um den Cursor zu bewegen.C# zuverlässig MouseMove (Hop)
[DllImport("user32.dll")]
static extern bool SetCursorPos(int X, int Y);
Wenn ich eine Hotkey es triggern, wird der Cursor auf die richtigen Koordinaten zu bewegen und das nächste Mal I bewegen, um die Maus, um es aus dieser Position fortsetzt. Arbeiten wie vorgesehen.
Allerdings muss ich SetCursorPos während eines MouseMove-Ereignisses auslösen. Wenn der Benutzer die Maus in einen bestimmten Bereich bewegt, möchte ich, dass er an einen anderen Ort springt und von dort fortfährt. Aber jetzt hüpft es zum Ziel und springt dann sofort zurück (90% der Zeit). Wie kann ich dieses Verhalten vermeiden?
Edit: Ich beschloss, um es zu umgehen, indem Sie den Cursor in 1 x 1 px Quadrat für 1 Mousemove-Ereignis. Cursor.Clip (Mausposition, neues Rechteck (1, 1));
Bitte geben Sie Ihren MouseMove Event-Handler-Code. –
Ich rufe nur diese Funktion und nichts anderes im MouseMove-Event an. – user1340531
@ user1340531: Post es trotzdem? – mpen