Erkennen von Plug-Ins

Ein Recognizer-Plug-In ist ein Objekt, das die Bewegung des Tablettstifts auf Gesten, Handschrift oder andere Objekte überwacht.

Systemgesten

Das RealTimeStylus-Objekt erkennt Systemgesten. Das RealTimeStylus-Objekt fügt der StylusQueues-Warteschlange ein SystemGestureData-Objekt als Antwort auf die Daten hinzu, die die Geste beenden, z. B. ein StylusUpData-Objekt für systemGesture. Weitere Informationen finden Sie unter Plug-In-Daten und realTimeStylus-Klasse.

Das GestureRecognizer-Objekt

Das GestureRecognizer-Objekt implementiert die Schnittstellen IStylusSyncPlugin und IStylusAsyncPlugin. Das GestureRecognizer-Objekt erkennt Anwendungsgesten. Intern verwendet das GestureRecognizer-Objekt die Microsoft-Gestenerkennung, um die Gestenerkennung durchzuführen.

Wenn das GestureRecognizer-Objekt eine Geste erkennt, fügt es der StylusQueues-Warteschlange benutzerdefinierte Stiftdaten als Antwort auf das StylusUpData-Objekt für den Strich hinzu. Die CustomDataId-Eigenschaft des CustomStylusData-Objekts wird auf den GestureRecognitionDataGuid-Wert festgelegt, und die Data-Eigenschaft des CustomStylusData-Objekts enthält ein GestureRecognitionData-Objekt.

Das folgende Diagramm veranschaulicht, wie das GestureRecognizer-Objekt den Tablettstiftdaten Daten hinzufügt.

Abbildung des GestureRecognizer-Datenflusses

In diesem Diagramm stellt der Kreis mit dem Buchstaben "SD" ein StylusDownData-Objekt dar, und die Kreise mit dem Buchstaben "P" stellen PacketsData-Objekte dar, die bereits der Ausgabewarteschlange des RealTimeStylus-Objekts hinzugefügt wurden und noch nicht an die asynchrone Plug-In-Sammlung gesendet wurden. Der Kreis mit dem Buchstaben "SU" stellt ein StylusUpData-Objekt dar, das derzeit vom RealTimeStylus-Objekt verarbeitet wird. Sie wird an die synchrone Plug-In-Sammlung gesendet und dann in der Ausgabewarteschlange platziert. Die Kreise mit dem Buchstaben "GR" stellen benutzerdefinierte Stiftdaten dar, die der Eingabewarteschlange vom GestureRecognizer-Plug-In als Reaktion auf die dem "SU" zugeordnete Stifteingabebenachrichtigung hinzugefügt werden. Die benutzerdefinierten Tablettstiftdaten mit dem Buchstaben "GR" werden dann an die synchronen Plug-Ins und dann an die Ausgabewarteschlange übergeben, bevor die nächsten Tablettstiftdaten verarbeitet werden. Der leere Kreis stellt die Position in der Ausgabewarteschlange dar, an der zukünftige Tablettstiftdaten hinzugefügt werden.

Standardmäßig erkennt das GestureRecognizer-Objekt nur Gesten mit nur einem Strich. Das GestureRecognizer-Objekt kann jedoch so festgelegt werden, dass Es multistroke-Gesten erkennt. Bei Gesten mit mehreren Tastatureingaben wird das CustomStylusData-Objekt der Warteschlange StylusQueues als Reaktion auf das StylusUpData-Objekt für den letzten Strich der Geste hinzugefügt. Wenn Sie Gesten mit mehreren Strichen erkennen, erhalten Sie möglicherweise Benachrichtigungen zu überlappenden Strichsätzen. Beispielsweise können der erste und zweite Strich zusammen als eine Geste erkannt werden, und der zweite Strich allein kann als Geste erkannt werden. Weitere Informationen zur Multistroke-Gestenerkennung finden Sie unter der GestureRecognizer-Klasse und der MaxStrokeCount-Eigenschaft.

Wenn Sie das GestureRecognizer-Objekt für die Multistroke-Gestenerkennung verwenden, erzielen Sie möglicherweise eine optimale Leistung, indem Sie ein kaskadiertes RealTimeStylus-Modell verwenden und das GestureRecognizer-Objekt an das sekundäre RealTimeStylus-Objekt anfügen. Weitere Informationen zum kaskadierenden RealTimeStylus-Modell finden Sie unter Das kaskadierte RealTimeStylus-Modell.

Besondere Überlegungen

In der folgenden Liste werden weitere Punkte beschrieben, die bei der Verwendung des GestureRecognizer-Objekts zu berücksichtigen sind.

Benutzerdefinierte Gestenerkennung

Sie können ein benutzerdefiniertes Recognizer-Plug-In erstellen, das Handschrift, Gesten oder andere Objekte erkennt, indem Sie:

Anwendungsgesten

Systemgesten

Zeitachse von Mausnachrichten und Systemereignissen