Freigeben über


Verwendungen von Tasten auf Berichtsebene (touchpad-buttons-report-level-usages)

In diesem Thema werden die Verwendungen von Schaltflächen auf Berichtsebene im Kontext der Sammlung für ein Windows-Präzisionstouchpad erläutert.

Diese Tabelle enthält alle obligatorischen Verwendungen, die in allen Eingabemeldungen von Windows-Präzisionstouchpads enthalten sein müssen. Die Tabelle enthält die Verwendungen für die Tasten 1, 2 und 3.

Member BESCHREIBUNG Seite ID Obligatorisch/Optional
Berichts-ID Melde-ID für ein Windows-Präzisionstouchpad 0x0D 0x05 Obligatorisch.
Überprüfungszeit Relative Scanzeit. 0x0D 0x56 Optional
Kontaktanzahl Gesamtanzahl der Kontakte in einer Meldung 0x0D 0x54 Obligatorisch.
Taste 1 Gibt den Status einer Touchpadtaste an, die im Digitalisierer integriert ist. 0x09 0x01 Optional
Taste 2 Gibt den Status einer externen Taste für die primäre Tastenfunktion an (standardmäßig Linksklick). 0x09 0x02 Optional
Taste 3 Gibt den Status einer externen Taste für die sekundäre Tastenfunktion an (standardmäßig Rechtsklick). 0x09 0x03 Optional

In den folgenden Abschnitten finden Sie Informationen zu den Verwendungen für Tasten. Informationen zu den anderen Membern (z. B. Melde-ID) finden Sie in der Sammlung für Windows-Präzisionstouchpads.

Taste 1

Der Schalter „Taste 1“ gibt den Status (unten/oben) der Taste auf dem Windows-Präzisionstouchpad unter dem Digitalisierer an. Unabhängig von der Implementierung des Tastentyps (Druck oder Mechanik) sollte bei Einwirken der erforderlichen Aktivierungskraft auf eine Taste der Zustand „gedrückt“ (unten) durch Festlegen des Tastenbits gemeldet werden. Wenn die auf die Taste angewandte Aktivierungskraft unter den erforderlichen Schwellenwert fällt, sollte der Status „nicht gedrückt“ (oben) durch Löschen des Tastenbits gemeldet werden.

diagram showing a contact placed on a windows precision touchpad, with sufficient force to invoke a button-down. the contact's down force is later reduced enough to invoke a button-up, while the contact is still on the digitizer surface.

Im Beispiel in der vorherigen Abbildung wird davon ausgegangen, dass ein Kontakt auf einem Windows-Präzisionstouchpad mit ausreichender Aktivierungskraft platziert wird, um eine Aktivierung der Taste auszulösen. Zu einem späteren Zeitpunkt wird die Aktivierungskraft dann soweit reduziert, dass das Loslassen der Taste simuliert wird, obwohl weiterhin ein Kontakt mit der Oberfläche besteht. Dies würde gemeldet wie in der folgenden Tabelle beschrieben.

Bericht 1 2 3 4 5 6 7 8 9 10 11
Kontaktanzahl 1 1 1 1 1 1 1 1 1 1 1
Taste 1 1 1 1 1 0 NR NR NR NR NR
Kontakt 2: Spitzenschalter 1 1 1 1 1 1 1 1 1 1 0
Kontakt 2: X, Y X₁, Y₁ X₂, Y₂ X₃, Y₃ X₄, Y₄ X₅, Y₅ X₆, Y₆ X₇, Y₇ X₈, Y₈ X₉, Y₉ X₁₀, Y₁₀ X₁₀, Y₁₀

diagram showing a non-capacitive contact that is placed on a windows precision touchpad with sufficient activation force to invoke a button down. the activation force is later reduced, such that it invokes a button up.

Im Beispiel in der vorherigen Abbildung wird davon ausgegangen, dass ein nicht kapazitiver Kontakt auf einem Windows-Präzisionstouchpad mit ausreichender Aktivierungskraft platziert wird, um eine Aktivierung der Taste auszulösen. Zu einem späteren Zeitpunkt wird die Aktivierungskraft dann soweit reduziert, dass das Loslassen der Taste simuliert wird. Dies würde gemeldet wie in der folgenden Tabelle beschrieben.

Bericht 1 2 3 4 5 6
Kontaktanzahl 0 0 0 0 0 0
Taste 1 1 1 1 1 0

Tasten 2 und 3 (getrennte Links- und Rechtsklicks)

Windows-Präzisionstouchpads unterstützen die Verwendungen für Tasten (Linksklick und Rechtsklick), die mit dem Digitalisierer integriert sind. Zusätzliche Tasten sollten jedoch über einen Drittanbietertreiber unterstützt werden.

Falls ein Gerät nur externe Tasten unterstützt, müssen trotzdem Taste 2 und Taste 3 verwendet werden, um auf die externen Tasten zu verweisen.

Wenn mehrere Tasten für die Verwendung mit dem Touchpad verfügbar sind, sollten im Deskriptor zusätzliche Tastenschalter deklariert werden. Externe Tasten werden auf der Paketebene ähnlich wie die Digitalisierungstasten gemeldet, aber es gibt keine Anforderungen an die Koordinierung externer Tasten mit dem Kontaktstatus.

Modi für die Paketberichterstattung

Parallelmodus

Im Parallelmodus melden Geräte alle Kontaktinformationen in einem einzelnen Paket. Jeder physische Kontakt wird durch eine logische Sammlung dargestellt, die in die Sammlung auf oberster Ebene eingebettet ist. Diese logische Sammlung enthält alle Verwendungen, die das Gerät für die einzelnen Kontakte unterstützt. Wenn Sie den Parallelmodus verwenden, muss jede der logischen Sammlungen identisch sein. Da das Gerät im Allgemeinen weniger Kontakte als den Höchstwert meldet, sollte die Anzahl der Kontakte, die in einem parallelen Paket gemeldet werden, über die Verwendung Kontaktanzahl kommuniziert werden.

Stellen Sie sich z. B. ein Gerät vor, das drei Kontakte unterstützt. Wenn Benutzer*innen derzeit nur zwei Finger auf dem Digitalisierer haben, enthält das parallele Paket nur zwei gültige Kontaktdaten in einer Meldung, die Daten für drei Kontakte übertragen kann. In diesem Fall sollte die Kontaktanzahl auf 2 festgelegt werden, damit die Clientanwendung weiß, dass alle Informationen zu mehr als zwei Kontakten ungültig sind.

Ein Nachteil beim Melden mehrerer Kontakte in einem Paket besteht darin, dass jedes Mal, wenn weniger Kontakte gemeldet werden als die maximale Anzahl möglicher Kontakte, Speicherplatz pro Paket verschwendet wird. Geräte können den Hybridmodus verwenden, um diese Ineffizienz zu verringern.

Hybridmodus

Im Hybridmodus ist die Anzahl der Kontakte, die in einer Meldung enthalten sein können, kleiner als die maximale Anzahl von Kontakten, die das Gerät unterstützt. Ein Gerät, das beispielsweise maximal 4 gleichzeitige physische Kontakte unterstützt, kann seine Sammlung auf oberster Ebene zur gleichzeitigen Meldung von maximal 2 Kontakten einrichten. Bei 4 Kontaktpunkten kann das Gerät diese in 2 serielle Meldungen unterteilen, die jeweils 2 Kontakte enthalten.

Wenn ein Gerät auf diese Weise Daten übermittelt, sollte der Verwendungswert Kontaktanzahl in der ersten Meldung die Gesamtanzahl der Kontakte widerspiegeln, die in den Hybridmeldungen übermittelt werden. In den anderen seriellen Meldungen sollte die Kontaktanzahl 0 (null) betragen.

Hybridmeldemodus mit einem Finger

Die erste Eingabemeldung für einen bestimmten Frame gibt die Gesamtanzahl der Kontakte an, die über die Verwendung „Kontaktanzahl“ gemeldet werden sollen. Alle nachfolgenden Eingabemeldungen für denselben Frame sollten den Wert null (0) für die Verwendung „Kontaktanzahl“ aufweisen, um anzugeben, dass sie Teil des zuvor gemeldeten Frames sind. Die Scanzeit für alle Meldungen eines bestimmten Frames sollte identisch sein.

Die folgende Tabelle zeigt die Meldesequenz für zwei Kontakte (im Hybridmeldemodus mit einem Finger).

Bericht 1 2 3 4 5 6
Kontaktanzahl 2 0 2 0 2 0
Kontakt-ID 1 2 1 2 1 2
Kontakt 1: X, Y X₁, Y₁ NR X₂, Y₂ NR X₃, Y₃ NR
Kontakt 1: Spitzenschalter 1 NR 1 NR 1 NR
Kontakt 2: X, Y NR X₁, Y₁ NR X₂, Y₂ NR X₃, Y₃
Kontakt 2: Spitzenschalter NR 1 NR 1 NR 1
Überprüfungszeit T₁ T₁ T₂ T₂ T₃ T₃

Über USB und I²C verbundene Windows-Präzisionstouchpads können Eingabemeldungen im Hybridmeldemodus mit einem Finger oder im Hybridmeldemodus mit zwei Fingern übermitteln.

Sammlung für ein Windows-Präzisionstouchpad