Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Mit dem kaskadierten RealTimeStylus-Modell können Sie zwei RealTimeStylus-Objekte verwenden, die jeweils in einem anderen Thread ausgeführt werden. Mit diesem Modell fügen Sie ein sekundäres RealTimeStylus-Objekt an ein primäres RealTimeStylus-Objekt an. Das sekundäre RealTimeStylus-Objekt wird als einziges asynchrones Plug-In in der asynchronen Plug-In-Auflistung des primären RealTimeStylus-Objekts angefügt.
Das kaskadierte RealTimeStylus-Modell kann in den folgenden Szenarien nützlich sein.
- Sie können der synchronen Plug-In-Auflistung des sekundären RealTimeStylus-Objekts bestimmte Aufgaben hinzufügen, die möglicherweise rechenintensiv sind, aber dennoch Echtzeitzugriff auf den Datenstrom des Tablet-Stifts erfordern, z. B. die Erkennung mehrerer Gesten.
- Sie können die Rechenlast Ihrer synchronen Plug-Ins auf zwei Threads verteilen, wodurch Verzögerungen bei der Freihandsammlung auf einigen Tablet-PCs verringert werden.
Das folgende Diagramm veranschaulicht den Fluss von Tablet-Stiftdaten durch zwei kaskadierte RealTimeStylus-Objekte und deren Plug-In-Auflistungen.
In diesem Diagramm stellt der Kreisbuchstaben "A" Tablet-Stiftdaten dar, die bereits von den primären und sekundären RealTimeStylus-Objekten verarbeitet wurden und in der Ausgabewarteschlange des sekundären RealTimeStylus-Objekts platziert wurden. Der Kreisbuchstaben "B" stellt Tablet-Stiftdaten dar, die bereits vom primären RealTimeStylus-Objekt verarbeitet und der Ausgabewarteschlange des primären RealTimeStylus-Objekts hinzugefügt wurden und noch nicht an das sekundäre RealTimeStylus-Objekt gesendet wurden. Der Kreisbuchstaben "C" stellt die Tablet-Stiftdaten dar, die das primäre RealTimeStylus-Objekt derzeit verarbeitet. Sie wird an die synchrone Plug-In-Auflistung gesendet und in der Ausgabewarteschlange platziert. Der leere Kreis stellt die Position in der Ausgabewarteschlange dar, an der zukünftige Tablet-Stiftdaten hinzugefügt werden.
Einschränkungen
Wenn Sie den Standard-RealTimeStylus-Konstruktor verwenden, erstellen Sie ein RealTimeStylus-Objekt , das nur Eingaben von einem anderen RealTimeStylus-Objekt akzeptieren kann.
In der folgenden Liste werden die Einschränkungen beschrieben, die der Verwendung des kaskadierten RealTimeStylus-Modells zugeordnet sind.
- Es können nur zwei RealTimeStylus-Objekte verwendet werden, ein primäres RealTimeStylus-Objekt und ein sekundäres RealTimeStylus-Objekt .
- Das primäre RealTimeStylus-Objekt muss mit einem Konstruktor erstellt werden, der den angefügtenControl- oder handle-Parameter verwendet. Das sekundäre RealTimeStylus-Objekt muss mit dem Konstruktor ohne Argument erstellt werden.
- Das sekundäre RealTimeStylus-Objekt muss das einzige asynchrone Plug-In in der asynchronen Plug-In-Auflistung des primären RealTimeStylus-Objekts sein.
- Ein sekundäres RealTimeStylus-Objekt kann jeweils nur an ein primäres RealTimeStylus-Objekt angefügt werden. Wenn es einem zweiten primären RealTimeStylus-Objekt hinzugefügt wird, löst die Add-Methode eine Ausnahme aus, und das sekundäre RealTimeStylus-Objekt wird nicht an das zweite primäre RealTimeStylus-Objekt angefügt.
- Das Verhalten einiger Elemente des sekundären RealTimeStylus-Objekts wird geändert. In der folgenden Tabelle wird das geänderte Verhalten dieser Member beschrieben.
Mitglied | Verhalten |
---|---|
GetDesiredPacketDescription | Diese Methode gibt die Informationen aus dem primären RealTimeStylus-Objekt zurück. Wenn das sekundäre RealTimeStylus nicht an ein primäres RealTimeStylus-Objekt angefügt ist, gibt diese Methode den Standardwert zurück. |
SetDesiredPacketDescription | Diese Methode löst eine InvalidOperationException-Ausnahme aus. |
GetStyluses | Diese Methode gibt die Informationen aus dem primären RealTimeStylus-Objekt zurück. Wenn das sekundäre RealTimeStylus nicht an ein primäres RealTimeStylus-Objekt angefügt ist, gibt diese Methode ein leeres Array zurück. |
Aktiviert | Beim Abrufen dieser Eigenschaft werden die Informationen aus dem primären RealTimeStylus-Objekt zurückgegeben. Wenn das sekundäre RealTimeStylus nicht an ein primäres RealTimeStylus-Objekt angefügt ist, gibt das Abrufen dieser Eigenschaft den Standardwert zurück. Hinweis: Durch Festlegen dieser Eigenschaft wird eine InvalidOperationException-Ausnahme ausgelöst. |
WindowInputRectangle | Beim Abrufen dieser Eigenschaft werden die Informationen aus dem primären RealTimeStylus-Objekt zurückgegeben. Wenn das sekundäre RealTimeStylus nicht an ein primäres RealTimeStylus-Objekt angefügt ist, gibt das Abrufen dieser Eigenschaft den Standardwert zurück. Hinweis: Durch Festlegen dieser Eigenschaft wird eine InvalidOperationException-Ausnahme ausgelöst. |
- Es wird erwartet, dass das übergeordnete RealTimeStylus-Objekt nicht mehr funktioniert, wenn das untergeordnete RealTimeStylus-Objekt verworfen wird.