Hallo Leute, folgende Situation: Ich habe hier eine Leiterplatte, die mit einem Arduino bestückt ist. Auf dieser Leiterplatte ist ein Endlosdrehschalter (Encoder) montiert. Der Arduino wird vom Computer als HID erkannt. Der Encoder sendet Maus-Scroll-Befehle. Nach rechts drehen scrollt herunter, nach links scrollt herauf. Der Rechner, an dem der Arduino angeschlossen ist, verfügt lediglich über einen Touchscreen. Was ich erreichen wollte: Ich arbeite viel mit Musik-Software und möchte dort die Plugins mit Hilfe des Encoders editieren. 90% aller VST-Plugins können mit Scroll-Befehlen etwas anfangen und inkrementieren bzw. dekrementieren den ausgewählten Wert. Und da sind wir bei meinem Problem: Wenn ich nun ein Plugin öffne, den Parameter an"touche" und dann den Encoder bewege, passiert nichts. Wenn ich allerdings eine USB Maus anschließe, den Cursor über den Parameter bewege und DANN den Encoder drehe, ändert sich der Wert. Daraus schließe ich, dass Touch-Befehle scheinbar nicht den Cursor bewegen. Hat jemand hierfür eine Lösung oder eine Idee? Besten Dank! LG, Christian
:
Verschoben durch Moderator
Keine Ahnung ob es was damit zu tun hat, aber du kannst versuchen diese Funktion an und aus zu machen: inaktives Fenster scrollen https://www.giga.de/downloads/windows-10/tipps/inaktive-fenster-scrollen-so-geht-s-in-windows-10-7-und-8 Ansonsten mal probieren die Maus mit dem Finger in das Element zu ziehen statt nur zu klicken oder beim Klick etwas zu ziehen. Eigentlich hätte ich schon erwartet dass ein Touchscreen Tipp die Maus Position aktualisiert. Es gäbe Möglichkeiten zum workaround dass dein HID device einen Klick macht vor dem Scroll Vorgang oder so aber das klingt nach einer Einladung für unerwartete Nebeneffekte.
Ein touch-event ist halt kein click-event...
Also, bei meinen Rechnern bewegt der Touch den Mauszeiger. Ganz einfacher Test: Touch irgendwohin, dann bewege die Maus. Wo kommt der Zeiger her? Was allerdings ist: Bei mir verschwindet der Zeiger beim Touch, die Maus lässt ihn sichtbar. Evtl. isses das? Das würde bedeuten das deine Anwendung registrieren kann das eine Maus oder ein Touch stattfindet, und Touch kann nicht scrollen, also ignoriert sie die Signale. Wie isses mit anderen Anwendungen, einem Browser oder einer Office-Anwendung z.B. Geht's da?
Seit Windows 8(.1) werden Touch-Events anders verarbeitet als bei Win7. Schau mal in den Einstellungen von den Eingabegeräten von Windows 10 ob du da was mit den Cursor-Settings Einstellen kannst.
Christian schrieb: > Wenn ich allerdings eine USB Maus > anschließe, den Cursor über den Parameter bewege und DANN den Encoder > drehe, ändert sich der Wert. Hört sich so an wie wenn das Steuerelement sich merkt welches Gerät(Maus o Touch) es aktiviert hat und nur von daher die Scroll werte auswertet. Wenn das hier funktioniert... Jens M. schrieb: > Also, bei meinen Rechnern bewegt der Touch den Mauszeiger. > Ganz einfacher Test: Touch irgendwohin, dann bewege die Maus. Wo kommt > der Zeiger her? ...wäre ein einfacher Workaround das dein Encoder bei einer Änderung einfach einen Click voraus schickt. Also der Touch positioniert den Zeiger über dem Element und du clickst dann nochmal bevor du Scroll Werte schickst.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.