Freigeben über


IInkCollector::p ut_CollectionMode-Methode (msinkaut.h)

Ruft den Auflistungsmodus ab, der bestimmt, ob Freihandeingabe, Geste oder beides beim Schreiben des Benutzers erkannt werden, oder legt diesen fest.

Dies ist eine Eigenschaft mit Lese- und Schreibzugriff.

Syntax

HRESULT put_CollectionMode(
  InkCollectionMode Mode
);

Parameter

Mode

Rückgabewert

Keine

Bemerkungen

Eine Liste der Modi, die Sie verwenden können, finden Sie unter InkCollectionMode-Enumerationstyp . Wenn Sie jedoch die CollectionMode-Eigenschaft auf einem System verwenden, auf dem das Microsoft Windows XP Tablet PC Edition Software Development Kit (SDK) installiert ist, aber keine Erkennung installiert ist, kann der Modus nicht auf GestureOnly oder InkAndGesture festgelegt werden.

Hinweis Das InkCollector-Objekt , das InkOverlay-Objekt oder das InkPicture-Steuerelement generiert einen Fehler, wenn Sie versuchen, die CollectionMode-Eigenschaft zu ändern, während freihand erfasst wird. Um diesen Konflikt zu vermeiden, überprüfen Sie die CollectingInk-Eigenschaft , bevor Sie die CollectionMode-Eigenschaft ändern.
 
Die folgenden Verhaltensweisen treten für jeden Der CollectionMode-Werte auf:

InkOnly-Modus

  • Nur Freihand wird gesammelt. Gesten sind nicht vorhanden.
  • Das Interesse des Gestenereignisses ist auf FALSE festgelegt (alle anderen Ereignisinteressen bleiben unverändert).

GestureOnly-Modus

  • Es werden nur Gesten gesammelt. ink ist nicht. Die Striche werden gelöscht, nachdem sie an die Gestenerkennung gesendet wurden.
  • Das Interesse des Gestenereignisses wird auf TRUE festgelegt (alle anderen Ereignisinteressen bleiben unverändert).
  • Der Freihandsammler löst nicht die folgenden Strich- und Paketereignisse aus: Die Ereignisse CursorDown, Stroke, NewPackets und NewInAirPackets .
  • Cursorereignisse werden ausgelöst.
  • Freihand wird immer gelöscht.

InkAndGesture-Modus

  • Sowohl Freihand- als auch Gesten werden gesammelt.
  • Es werden nur Einzelstrichgesten erkannt.
  • Das Interesse des Gestenereignisses wird auf TRUE festgelegt (alle anderen Ereignisinteressen bleiben unverändert).
  • Das Gestenereignis wird zuerst ausgelöst, sodass Sie die Geste annehmen oder abbrechen können. Um die Geste abzubrechen, legen Sie den Cancel-Parameter auf TRUE fest. Das Abbrechen der Geste erzwingt, dass der Freihandsammler die Freihandeingabe erfasst.
Das Ändern des Sammlungsmodus ändert nicht die status einzelner Gesten.

Unerwünschtes Verhalten kann auftreten, wenn CollectionMode auf InkAndGesture festgelegt ist und das Interesse eines Objekts/Steuerelements an einer bekannten Geste festgelegt wird (durch Aufrufen der SetGestureStatus-Methode ). Wenn Sie Freihand zeichnen, die in etwa wie die bekannte Geste aussieht, und die bekannte Geste in der Liste der Alternativen des Erkennungsmoduls enthalten ist, wird das Gestenereignis ausgelöst, und die Freihand wird ausgeblendet, auch wenn die Geste nicht die obere Alternative ist. Um zu verhindern, dass die Freihandeingabe ausgeblendet und die Sammlung der Geste abgebrochen wird, legen Sie den Cancel-Parameter auf TRUE fest, wenn es sich um ein Ereignis handelt, an dem Sie kein Interesse haben.

Wenn CollectionMode auf GestureOnly festgelegt ist, ist das Timeout zwischen dem Hinzufügen einer Geste durch einen Benutzer und dem Auftreten des Gestenereignisses ein fester Wert, der programmgesteuert nicht geändert werden kann. Die Gestenerkennung ist im InkAndGesture-Modus schneller. Um die Sammlung von Freihandeingaben im InkAndGesture-Modus zu verhindern, haben Sie folgende Möglichkeiten:

  1. Legen Sie die CollectionMode-Eigenschaft auf InkAndGesture fest.
  2. Löschen Sie im Stroke-Ereignis den Strich.
  3. Verarbeiten Sie im Gestikereignis die Geste.
  4. Legen Sie DynamicRendering auf FALSE fest, um den Freihandfluss beim Gestikvorgang zu verhindern.

Anforderungen

   
Unterstützte Mindestversion (Client) Windows XP Tablet PC Edition [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Nicht unterstützt
Zielplattform Windows
Kopfzeile msinkaut.h
Bibliothek InkObj.dll

Weitere Informationen

CollectingInk-Eigenschaft

Enabled-Eigenschaft

IInkCollector

InkCollectionMode-Enumeration

InkCollector-Klasse