Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
Bewegungsrichtung der Maus feststellen
EyeTrackJack
myCSharp.de - Member



Dabei seit:
Beiträge: 36

Themenstarter:

Bewegungsrichtung der Maus feststellen

beantworten | zitieren | melden

Hallo,

ich suche nach einer Möglichkeit, festzustellen, in welche Richtung die Maus bewegt wird. Allerdings will ich das auch wissen, wenn der Mauscursor schon am Bildrand ist und man die Maus weiter in diese Richtung bewegt

Was kann man da machen?

Grüße.

Tobias
private Nachricht | Beiträge des Benutzers
Spook
myCSharp.de - Member



Dabei seit:
Beiträge: 233
Herkunft: Esslingen a.N.

beantworten | zitieren | melden

Hallo EyeTrackJack,

Raw Input könnte die Lösung sein. Wenn man weiter zu Mauseingaben geht, gibt es relative Bewegungsinformationen. Allerdings weis ich nicht, ob diese von Windows am Bildschirmrand auch abgeschnitten werden. Das müsste man noch evaluieren.

In welcher Art von Umgebung benötigst du diese Information? 3D (Spiel)?

Grüße
spooky
private Nachricht | Beiträge des Benutzers
EyeTrackJack
myCSharp.de - Member



Dabei seit:
Beiträge: 36

Themenstarter:

beantworten | zitieren | melden

Es geht im Prinzip um MIDI Daten. Ich will einen Regler bauen, der mit der Mausposition arbeitet.

Der Hintergrund ist die Verwendung von einem Head-Tracker, also ein Eingabegerät, das die Kopfbewegung erfasst. Damit will ich die Maus steuern. Das Problem ist, dass sich der damit erreichbare Bildschirmbereich ständig verändert. Somit ist nie garantiert, dass ich einen Schieberegler jederzeit an eine beliebige Position schieben kann. Deshalb brauche ich relative Koordinaten.

In Spielen funktioniert es ja auch, dass man die Maus endlos in eine Richtung bewegen kann und man sich dadurch die ganze Zeit dreht.

private Nachricht | Beiträge des Benutzers
Palladin007
myCSharp.de - Member

Avatar #avatar-4140.png


Dabei seit:
Beiträge: 1457
Herkunft: Düsseldorf

beantworten | zitieren | melden

Ist 'ne Weile her, dass ich das gemacht habe, aber ich hatte es damit gemacht:
Hooks - Win32 apps

Du registrierst einen Hook für die Maus (SetWindowsHookEx) und trackst einfach die Maus-Position.
Position vorher und aktuell ergeben einen Vektor, ergo: Du hast die Richtung.

Ob das alles auch aufgerufen wird, wenn man am Rand angekommen ist, weiß ich nicht, aber Du könntest dir mit einem kleinen Trick behelfen.
Wenn Du am Rand angekommen bist, setzt Du die Maus einfach einen Pixel vom Rand weg.
Wie gut das funktioniert, weiß ich aber nicht, doch ein Versuch ist es sicher wert.
private Nachricht | Beiträge des Benutzers