Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   OnGesture unter Windows 8.1 (https://www.delphipraxis.net/183151-ongesture-unter-windows-8-1-a.html)

LokutusvB 16. Dez 2014 08:46

Delphi-Version: 5

OnGesture unter Windows 8.1
 
Morgen,

ich habe ein paar kleine Testprogramme geschrieben, in dem ein GestureManager einer Form, einem Bild, einem Panel oder einer DruckVorschau zugewiesen ist und dort auf igiZoom reagieren soll. Anleitungen hierfür gibt es im Netz zum Glück zur Genüge. Auf meinem Laptop mit Windows 7 unter Benutzung von MultiTouch funktioniert das wunderbar. Die Zoomgeste wird erkannt, das entsprechende Objekt, z.B. ein Bild oder Panel, wird vergrößert oder verkleinert.

Wenn ich die Programme jedoch auf einem Tablet mit Windows 8 ausführe, wird die Zoom-Geste nicht erkannt. Im Explorer von Windows selbst erfolgt eine Reakion auf die Zoom-Geste, im Delphiprogramm, egal ob VCL oder Firemonkey jedoch gibt es keine Reaktion. Kennt jemand das Problem? Wo liegt der Fehler?

Der schöne Günther 16. Dez 2014 09:44

AW: OnGesture unter Windows 8.1
 
Kannst du ein bisschen Code einstellen?

Der Gesture-Manager ist übrigens nur zum Verwenden von vor-aufgenommenen Gesten wie ein "Z" zu malen. Der triggert auch erst wenn die Geste vollständig abgeschlossen ist. Finde ich ziemlichen Quatsch: Für das was jeder gewöhnt ist ("Zwei Finger Zoom", "Nach links/rechts rausschieben") ist das nicht zu gebrauchen.

Das
Delphi-Quellcode:
OnGesture
-Event ist für "interaktive Gesten": Hier feuert das OnGesture-Event kontinuierlich bei jeder Änderung der Finger. Hier brauchst du auch keinen Gesture-Manager, der ist eher hinderlich.

LokutusvB 16. Dez 2014 10:22

AW: OnGesture unter Windows 8.1
 
Liste der Anhänge anzeigen (Anzahl: 1)
Ich habe, wie in den Anleitungen geschrieben, einen GestureManager auf die Form gebracht, wie im angefügten Beispiel dem Panel zugeordnet, die Interactive Geste Zoom auf True gesetzt und das Ereignis OnGesture bearbeitet. Unter Win7 mit MultiTouch funktioniert das Zoom fehlerfrei, und Windows 8 erfolgt einfach keine Reaktion.

Das kleine Projekt hänge ich mal al Zip bei.

Zusatz:
Ich habe den GestureManager mal entfernt und für das Panel wieder Zoom aktiviert, das Touch reagiert im Programm nach wie vor nicht.

LokutusvB 16. Dez 2014 13:08

[Gelöst]AW: OnGesture unter Windows 8.1
 
Warum auch immer, ich habe das Test-Programm nochmals ohne GestureManager neu erzeugt und auf dem Tablet getestet, nun funktioniert auch dort die Zoom-Geste.

Danke für deine Hilfe!


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:32 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz