Gesten für Flattern

Windows Vista enthält eine Reihe von acht einfachen Gesten für das Flattern. Bei Flimmern handelt es sich um schnelle, lineare Stiftbewegungen, die Scrollaktionen und -befehlen zugeordnet sind.

Flick Details

Das Feature "Flacker" bietet dem Benutzer eine neue Möglichkeit, mit dem Tablet PC zu interagieren, indem es ermöglicht, allgemeine Aktionen auszuführen, indem schnelle Gesten mit dem Stift ausgeführt werden. Flacker existieren mit normalen Benutzeraktionen wie tippen nach links und rechts, scrollen und ohne Unterbrechungen.

Ein Flimmer ist eine unidirektionale Stiftgeste, die erfordert, dass der Benutzer den Digitizer in einer schnellen Bewegung kontaktiert. Ein Flimmer wird durch hohe Geschwindigkeit und ein hohes Maß an Geradekeit gekennzeichnet. Ein Flimmer wird durch seine Richtung identifiziert. Flimmer können in acht Richtungen erstellt werden, die den Kardinal- und sekundären Kompassrichtungen entsprechen.

Eine Aktion oder Eine Aktion ist die Aktion oder Verknüpfung, die als Reaktion auf einen Flimmer ausgeführt wird. Flimmer werden Aktionen zugeordnet. Die folgende Abbildung zeigt ein Diagramm von acht Stiftflimmern, die ihren Flimmeraktionen entsprechen.

Abbildung der Gestenzuordnung

Wenn der Benutzer den Stift über den Digitizer eines Tablet-PCs verschiebt, generiert die Hardware Stiftpakete, die an das Stifteingabesubsystem der Tablet PC-Plattform weitergeleitet werden. Wenn der Stift als Ersatz für die Maus verwendet wird, verwendet das Stifteingabesubsystem normalerweise diese Stiftpakete und sendet sie möglicherweise mit Änderungen an User32, die Windows Komponente, die für die Verarbeitung der Mauseingabe verantwortlich ist. Wenn der Stift auf einer Belagsoberfläche verwendet wird, wird Ink anstelle von generierten Mauspaketen gerendert.

Die Routine zur Erkennung von Flimmern wird im Stifteingabesubsystem implementiert. Die Erkennung von Flimmern beginnt bei gedrückter Stiftbewegung und wird fortgesetzt, bis eine der beiden

  1. Die Sequenz der empfangenen Pakete wird als kein Flacker oder

  2. Pen-up tritt auf.

Während der Erkennung von Flimmern werden Stiftpakete zurückgehalten und nicht an das System gesendet. Dies muss geschehen, da das Senden von Paketen die ausgeführte Aktion "Flattern" beeinträchtigen kann. Beispielsweise würde das Senden von Paketen während eines Flackers, der einer Kopieraktion zugeordnet ist, das Ausgewählte verwerfen, was bedeutet, dass zum Zeitpunkt des Sendens der Aktion nichts zu kopieren wäre.

Während die Pakete in das Stifteingabesubsystem übertragen werden, berechnet die Routine zur Erkennung von Flimmern Metriken zu Länge, Geschwindigkeit, Zeit und Krümmung der ausgeführten Bewegung. Bei jedem eintreffenden Paket aktualisiert die Erkennungsroutine jede dieser Metriken. Sobald eine der Metriken außerhalb der Metriken liegt, die einen Flacker darstellen würden, endet die Erkennung von Flimmern, und die Pakete werden gesendet.

Wo Flimmer erkannt werden

Flackergesten werden durch die Tatsache ermöglicht, dass Ziehbewegungen in der Regel eher langsam ausgeführt werden. Der Benutzer muss zuerst den Startpunkt des Ziehpunkts als Ziel verwenden, den Ziehpunkt ausführen und dann den Endpunkt als Ziel verwenden. Normalerweise dauert dies zu lange, um sich als Flimmer zu qualifizieren. Auf Denkoberflächen werden jedoch schnell Striche verwendet, die als Flimmer gelten würden. Das Überschreiten eines "t" ist ein gängiges Beispiel. Daher wird die Erkennung von Flimmern standardmäßig über Freihandoberflächen deaktiviert und systemweit aktiviert.

Fokusprobleme

Sobald ein Flacker erkannt wurde, beginnt eine Sequenz von Ereignissen, die letztendlich dazu führt, dass das System eine bestimmte Aktion als Reaktion auf den aufgetretenen Flimmer ausführt. Zuerst bestimmt die Erkennungsroutine im Stifteingabesubsystem, an welches Fenster der Flattern gesendet werden soll. Dies ist in der Regel das Fenster, das den Fokus besitzt, es gibt jedoch Ausnahmen. Beim Scrollen von Flimmern wird der Flimmer an das Fenster gesendet, in dem der Blättern aufgetreten ist. Beachten Sie, dass dies nicht unbedingt das Fenster mit Fokus ist. Wenn ein Flacker an ein Fenster gesendet wird, das keinen Fokus besitzt, ändert sich der Fokus nicht auf dieses Fenster.

Flimmeraktionen

Sobald das Zielfenster bestimmt wurde, kann dieses Fenster den Flimmer selbst abhängig vom Standard- oder programmierten Ereignisverhalten verarbeiten. Anwendungen können basierend auf der Anwendung und der Richtung und Position des Flimmers auf die Aktion reagieren, die am besten geeignet ist. In einer Zuordnungsanwendung können z. B. Nach oben und unten-Flatterbewegungen vergrößert oder verkleinert werden, anstatt vertikal zu scrollen, wie es beim Standardverhalten zu erwarten wäre.

Um eine Anwendung zu warnen, dass ein Flacker aufgetreten ist, wird eine Fenstermeldung an sie gesendet. Diese Fenstermeldung enthält sowohl den Startpunkt des Flimmers als auch die Richtung des Flatterns. Wenn die Anwendung diese Fenstermeldung verarbeitet, wird vom Stifteingabesubsystem keine weitere Aktion ausgeführt.

Nachdem ein Flacker erkannt wurde, wird visuelles Feedback, das die Aktion "Flackern" darstellt, auf dem Bildschirm angezeigt. Dieses Feedback dient zwei Zwecken. Zunächst wird für den Benutzer bestätigt, dass der Flimmer erfolgreich war. Zweitens wird der Benutzer daran erinnert, welche Aktion ausgeführt wurde, was dem Benutzer dabei hilft, die Flimmerrichtung mit der zugehörigen Aktion zu verbinden.

Das Feedback zum Flackern besteht aus zwei Teilen: ein Symbol, das die Aktion darstellt, und eine Bezeichnung, die den Namen der Aktion enthält. Die Bezeichnung wird unter dem Symbol angezeigt. Das Feedback wird sofort angezeigt, nachdem der Flacker erkannt wurde. Obwohl Anwendungen ihr Verhalten als Reaktion auf Flimmer anpassen können, indem sie die Meldung des Fensters "Flimmern" verarbeiten, kann die Anwendung das Feedback zum Flimmern nicht deaktivieren oder ändern.

Es wird erwartet, dass die meisten Anwendungen nicht flimmern und daher die oben beschriebene Fenstermeldung nicht verarbeiten. Wenn die Nachricht nicht verarbeitet wird, führt das Stifteingabesubsystem weitere Maßnahmen aus. Zunächst wird die Aktion gesucht, die mit der Richtung des erkannten Flackers verknüpft ist. Als Nächstes werden (in der folgenden Tabelle beschriebene) Schritte ausgeführt, damit diese Aktion im Zielfenster ausgeführt wird. Bei vielen der Flackeraktionen umfasst dies das Senden eines Anwendungsbefehls, bestimmte implementierte Aktionen jedoch nicht.

Verarbeiten von Anwendungsbefehlen

Ihre Anwendung sollte auf einen der Anwendungsbefehle reagieren, die möglicherweise einer Flatternbewegung zugewiesen werden können. Wenn eine Anwendung nicht auf die WM _ _ TABLET-FLAF-Nachrichtantwortet, folgt Windows Vista, indem die entsprechende WM _ APPCOMMAND-Benachrichtigung und dann eine WM _ KEYDOWN-Benachrichtigung gesendet wird.

Im Folgenden finden Sie eine Liste der Anwendungsbefehle, die Fls zugewiesen werden können, mit der Nachricht für die Sicherungsschlüssel, die gesendet werden kann.

Befehl Tastatureingabe für Sicherungen
APPCOMMAND-BROWSER _ _ RÜCKWÄRTS
Keine
APPCOMMAND _ BROWSER _ FORWARD
Keine
APPCOMMAND _ COPY
STRG+C
APPCOMMAND _ PASTE
STRG+V
APPCOMMAND _ UNDO
STRG+Z
APPCOMMAND _ DELETE
Entf
APPCOMMAND _ CUT
STRG+X
APPCOMMAND _ OPEN
STRG+O
APPCOMMAND _ PRINT
STRG+P
APPCOMMAND _ SAVE
STRG+S
APPCOMMAND _ REDO
STRG+Y
APPCOMMAND _ CLOSE

Bearbeitungsbefehle wie "Kopieren", "Einfügen", "Ausschneiden" und "Löschen" können gegen eine Auswahl oder an das Objekt gerichtet werden, das sich an der Basis der Flatternbewegung befindet. Wenn keine Auswahl vorhanden ist, können Sie die Daten in der FLICK _ POINT-Struktur verwenden, um zu bestimmen, welches Objekt ggf. das Ziel des Bearbeitungsbefehls war.

Referenz zur Flicks-API

Reagieren auf Flick-Gesten