![]() |
Mauszeiger gleichmäßig verschieben
Hallo!
Hat jemand eine Idee, wie man den Mauszeiger mit Mouse.CursorPos auf einem bestimmten Pfad verschieben kann? Ich will, dass der Mauszeiger (für eine Hilfefunktion) gleichmäßig an eine bestimmte Position verschoben wird. Leider hab ich überhaupt keine Idee, wie ich berechne, wie weit der Zeiger pro Timerdurchlauf verschoben werden muss... :? |
AW: Mauszeiger gleichmäßig verschieben
Wenn ich dich richtig verstehe, dann musst du dir zu Beginn die Differenz in x- und y-Richtung (dx und dy) zwischen Ziel-Punkt und aktueller Cursor-Position ausrechnen. Diese teilst du dann jeweils durch die Anzahl der gewünschten Schritte (Timer-Aufrufe). Bei jedem Timer-Aufruf verschiebst du den Cursor dann um dx und dy. Evtl. solltest du bei dx und dy mit Floats arbeiten, damit die Abweichung nicht zu groß wird.
|
AW: Mauszeiger gleichmäßig verschieben
Hi!
Vielen Dank, ich stand irgendwie auf dem Schlauch und bin nicht selbst drauf gekommen :wink: Ich werd das ganze zwar erst später testen können, aber trotzdem schon mal danke!:-D Lg, Felix |
AW: Mauszeiger gleichmäßig verschieben
die Floats sind meiner Meinung nach nicht unbedingt notwendig. Da man als User die Maus ja bewegen kann, während dein Programm sie auch bewegt, musst du jedes Mal den Abstand neu berechnen. Und ich würde auch keine Anzahl von Schritten festlegen, sondern die Schrittgröße (nur so, falls der User dazwischen funkt).
Bernhard |
AW: Mauszeiger gleichmäßig verschieben
Ich fände es geschickter (einfacher), das mit festen Schritten zu lösen, die Schleife aber abzubrechen, sobald der Mauszeiger von Hand verschoben wurde (diese sich also nicht mehr am letzten berechneten Zwischenschritt befindet) befindet.
Sobald der User dazwischen funkt, wird sozusagen die automatische Bewegung beendet. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:23 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz