Auswählen des richtigen Ansatzes für Windows Touch

In diesem Abschnitt werden die verschiedenen Ansätze für Windows Touch erläutert, die Sie verwenden können.

Sie können Anwendungen mithilfe von Windows Touch-Features auf vielfältige Weise verbessern. Bevor Sie eine Methode einführen, sollten Sie überlegen, was Sie mit Ihrer Anwendung tun möchten. Die folgenden Szenarien sind typisch für Windows Touch:

  • Sie möchten, dass sich Ihre Anwendung wie in Legacyversionen von Windows verhält, aber Windows Touch-Nachrichten sollen sich konsistent verhalten.
  • Sie möchten in Ihrer Anwendung benutzerdefinierte Objektrotation, Übersetzung, Schwenken oder Zoom unterstützen.
  • Sie möchten, dass Ihre Anwendung eine differenzierte Interpretation von Windows-Touch-Gesten hat oder mehrere Berührungen für eine Anwendung interpretiert, die speziell für die Windows Touch-Eingabe optimiert ist.
  • Sie verfügen über eine Anwendung, die das RealTimeStylus-Objekt verwendet und es mit Windows Touch-Funktionen erweitern möchte.

Sie möchten, dass sich Ihre Anwendung wie in Legacyversionen von Windows verhält.

In Windows 7 generieren Anwendungen standardmäßig Nachrichten, die Windows Touch-Funktionalität aktivieren. Beispielsweise lösen Schwenkgesten WM_*SCROLL-Nachrichten aus. Zusätzlich zur Schwenkunterstützung unterstützt der Standardhandler WM_GESTURE in Windows 7 Begrenzungsfeedback, Zoomen und Drücken und Tippen. Begrenzungsfeedback wird auch über legacy-Support aktiviert. Weitere Informationen zur Zuordnung von Gesten zu Nachrichten finden Sie in der Übersicht über Windows-Touchgesten . Entwickler, die nur diese grundlegende Funktionalität wünschen, müssen nicht direkt mit der Windows Touch-API arbeiten.

Hinweis

Benutzerdefinierte Bildlaufleistenhandler müssen die SM_THUMBPOSITION Anforderung für WM_VSCROLL Nachrichten unterstützen und die SB_LINELEFT Anforderung und SB_LINERIGHT Anforderung für WM_HSCROLL Nachrichten unterstützen.

Sie möchten unterstützung für benutzerdefinierte Objektrotation, Übersetzung, Schwenken oder Zoomen.

Wenn Sie nur eingeschränkte Unterstützung für toucheingaben möchten, aber das Standardverhalten, das Windows 7 bietet, für Ihre Anwendung nicht geeignet ist, können Sie Gesten verwenden, um Ihre Anwendung zu verbessern. Mithilfe von Gesten können Sie die Gestenbefehle interpretieren, indem Sie die WM_GESTURE Nachricht behandeln. Weitere Informationen zu Gesten finden Sie im Abschnitt Windows-Touchgesten. Wenn Ihre Anwendung nur Unterstützung für Drehungen mit hoher Granularität, verbesserte Zoomunterstützung oder Schwenken mit einem Finger benötigt, sind Gesten der beste Ansatz für die Windows Touch-Entwicklung. Zusätzlich zum Interpretieren der Gestenmeldung können Sie unterstützung für Begrenzungsfeedback verwenden. Weitere Informationen zu Begrenzungsfeedback finden Sie im Abschnitt Begrenzungsfeedback der Windows Touch Programming Reference. In Windows 7 nutzen die Eingabeaufforderung und das Internet Explorer das Feedback und Gesten der Begrenzung nutzen.

Sie möchten eine präzise Gesteninterpretation oder eine benutzerdefinierte Behandlung mehrerer Touchpunkte

Wenn Sie Gesten noch spezifischer steuern möchten, als dies die WM_GESTURE Nachricht bietet, oder Wenn Sie mehrere Gesten für mehrere Objekte interpretieren möchten, sollten Sie den Bearbeitungsprozessor verwenden. Der Manipulationsprozessor ist im Wesentlichen eine Übermenge von Gesten. Die Verwendung des Bearbeitungsprozessors erfordert, dass Sie eine Ereignissenke für Bearbeitungen implementieren, an die Sie rohe Touchdaten einspeisen.

Wenn Sie neben der Interpretation der Gesten eine einfache Objektphysik wünschen, sollten Sie einen Inertia-Prozessor in Verbindung mit dem Bearbeitungsprozessor verwenden. Der Inertia-Prozessor arbeitet mit dem Manipulationsprozessor zusammen, indem er nach Abschluss der Manipulation Geschwindigkeitswerte vom Manipulationsprozessor übernimmt.

Wenn Sie mehrere Berührungspunkte in Ihrer Anwendung interpretieren möchten, sollten Sie einen Nachrichtenhandler für die WM_TOUCH Nachricht erstellen.

Wichtig

Windows 11 und neuer

Einige Touchinteraktionen mit drei und vier Fingern funktionieren in Windows-Apps standardmäßig nicht mehr.

Standardmäßig werden Touchinteraktionen mit drei und vier Fingern jetzt vom System für Vorgänge wie das Wechseln oder Minimieren von Fenstern und das Ändern virtueller Desktops verwendet. Da diese Interaktionen nun auf Systemebene behandelt werden, könnte sich diese Änderung auf die Funktionalität Ihrer App auswirken.

Um Interaktionen mit drei oder vier Fingern innerhalb einer Anwendung zu unterstützen, wurde eine neue Benutzereinstellung eingeführt, die angibt, ob das System diese Interaktionen verarbeitet oder nicht:

Bluetooth-Geräte &> Touch > "Drei- und Vier-Finger-Touch-Gesten"

Wenn "Ein" (Standard) festgelegt ist, verarbeitet das System alle Drei- und Vierfingerinteraktionen (Apps können diese nicht unterstützen).

Wenn sie auf "Off" festgelegt ist, können Interaktionen mit drei und vier Fingern von Apps unterstützt werden (sie werden nicht vom System verarbeitet).

Wenn Ihre Anwendung diese Interaktionen unterstützen muss, empfiehlt es sich, Benutzer über diese Einstellung zu informieren und einen Link bereitzustellen, der die Einstellungs-App zur entsprechenden Seite (ms-settings:devices-touch) startet. Weitere Informationen finden Sie unter Launcher.LaunchUriAsync-Methode.

Sie möchten die Windows Touch-Eingabe für eine Anwendung aktivieren, die realTimeStylus verwendet.

Wenn Sie die Eingabe für mehrere Kontakte auf der Tablet PC-Plattform aktivieren möchten, müssen Sie ein benutzerdefiniertes RealTimeStylus-Plug-In implementieren, das die Windows Touch-Daten interpretiert. Microsoft hat die Schnittstellen ITablet3 und IRealTimeStylus3 eingeführt, um eingaben von mehreren Kontakten im RealTimeStylus-Plug-In zu ermöglichen. Diese Schnittstellen vereinfachen das Erweitern von RealTimeStylus-Plug-Ins, um mehrere Kontaktpunkte zu unterstützen.

Rufen Sie IsMultiTouch auf, um zu überprüfen, ob die Unterstützung für mehrere Kontakte aktiviert ist. Rufen Sie GetMaximumCursors auf, um die Anzahl der unterstützten Kontakte zu überprüfen. Rufen Sie MultiTouchEnabled an, um die Unterstützung für mehrere Kontakte zu aktivieren oder zu deaktivieren.

Hinweis

Wenn Sie im RealTimeStylus nicht mehrere Kontaktpunkte aktivieren, erhalten Sie Gestenmeldungen wie Schwenken und Zoomen.

Programmierhandbuch