Używam tej funkcji do przesuwania kursora.C# niezawodny MouseMove (przeskok)
[DllImport("user32.dll")]
static extern bool SetCursorPos(int X, int Y);
Kiedy używać skrótu, aby go wyzwolić, kursor przeniesie się do poprawnych coords i następnym razem przesunąć mysz nadal z tej pozycji. Działaj zgodnie z przeznaczeniem.
Jednak muszę wywołać SetCursorPos podczas zdarzenia MouseMove. Jeśli użytkownik przesunie mysz w pewien obszar, chcę, aby przeskoczył w inne miejsce i kontynuował. Ale teraz przeskakuje do miejsca docelowego, a następnie natychmiast przeskakuje z powrotem (w 90% przypadków). Jak mogę tego uniknąć?
Edytowanie: Postanowiłem obejść go, przycinając kursor w 1 o 1 piksel kwadratowy dla 1 zdarzenia mousemove. Cursor.Clip (MousePosition, new Rectangle (1, 1));
Proszę zaksięgować swój kod obsługi zdarzenia MouseMove. –
Dosłownie po prostu wywołuję tę funkcję i nic więcej w wydarzeniu MouseMove. – user1340531
@ user1340531: Opublikuj mimo to? – mpen