QGesture Class
Die Klasse „QGesture“ repräsentiert eine Geste und enthält Eigenschaften, die die entsprechende Benutzereingabe beschreiben. Mehr...
| Header: | #include <QGesture> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Widgets) target_link_libraries(mytarget PRIVATE Qt6::Widgets) |
| qmake: | QT += widgets |
| Erbt von: | QObject |
| Vererbt an: | QPanGesture, QPinchGesture, QSwipeGesture, QTapAndHoldGesture sowie QTapGesture |
Öffentliche Typen
| enum | GestureCancelPolicy { CancelNone, CancelAllInContext } |
Eigenschaften
|
Öffentliche Funktionen
| QGesture(QObject *parent = nullptr) | |
| virtual | ~QGesture() |
| QGesture::GestureCancelPolicy | gestureCancelPolicy() const |
| Qt::GestureType | gestureType() const |
| bool | hasHotSpot() const |
| QPointF | hotSpot() const |
| void | setGestureCancelPolicy(QGesture::GestureCancelPolicy policy) |
| void | setHotSpot(const QPointF &value) |
| Qt::GestureState | state() const |
| void | unsetHotSpot() |
Ausführliche Beschreibung
Gestenobjekte werden nicht direkt von Entwicklern erstellt. Sie werden vom Objekt ` QGestureRecognizer ` erzeugt, das bei der Anwendung registriert ist; siehe ` QGestureRecognizer::registerRecognizer()`.
Einen Überblick über die Gestenverarbeitung in Qt sowie Informationen zur Verwendung von Gesten in Ihren Anwendungen finden Sie im Dokument „Gesten in Widgets und der Grafikansicht “.
Gesten-Eigenschaften
Die Klasse verfügt über eine Liste von Eigenschaften, die vom Benutzer abgefragt werden können, um bestimmte gestenspezifische Argumente zu erhalten. Beispielsweise verfügt die Pinch-Geste über einen Skalierungsfaktor, der als Eigenschaft verfügbar ist.
Entwickler von benutzerdefinierten Gestenerkennern können zusätzliche Eigenschaften hinzufügen, um weitere Informationen zu einer Geste bereitzustellen. Dies kann durch Hinzufügen neuer dynamischer Eigenschaften zu einem QGesture-Objekt oder durch Erstellen einer Unterklasse der QGesture-Klasse (oder einer ihrer Unterklassen) erfolgen.
Lebenszyklus eines Gestenobjekts
Eine QGesture-Instanz wird bei Bedarf implizit erstellt und gehört Qt. Entwickler sollten diese Instanzen niemals zerstören oder für eine spätere Verwendung speichern, da Qt bestimmte Instanzen davon zerstören und neue erstellen kann, um sie zu ersetzen.
Der registrierte Gestenerkennungsmechanismus überwacht die Eingabeereignisse für das Zielobjekt über dessen Funktion ` recognize()` und aktualisiert die Eigenschaften des Gestenobjekts nach Bedarf.
Das Gestenobjekt kann im Rahmen eines ` QGestureEvent ` an das Zielobjekt übergeben werden, wenn die entsprechende Geste aktiv ist oder gerade abgebrochen wurde. Jedes übergebene Ereignis enthält eine Liste von Gestenobjekten, da für das Zielobjekt möglicherweise die Unterstützung für mehr als eine Geste aktiviert ist. Aufgrund der Art und Weise, wie Ereignisse in Qt verarbeitet werden, können Gestenereignisse von anderen Objekten gefiltert werden.
Siehe auch „ QGestureEvent “ und „ QGestureRecognizer “.
Dokumentation zu Mitgliedstypen
enum QGesture::GestureCancelPolicy
Diese Enumeration beschreibt, wie das Akzeptieren einer Geste andere Gesten automatisch abbrechen kann.
| Konstante | Wert | Beschreibung |
|---|---|---|
QGesture::CancelNone | 0 | Bei der Annahme dieser Geste sind keine anderen Gesten betroffen. |
QGesture::CancelAllInContext | 1 | Bei Annahme dieser Geste werden alle im Kontext aktiven Gesten (unter Berücksichtigung der bei der Anmeldung für die Geste angegebenen „ Qt::GestureFlag “) abgebrochen. |
Eigenschaftsdokumentation
gestureCancelPolicy : QGesture::GestureCancelPolicy
Diese Eigenschaft enthält die Richtlinie zur Festlegung, was bei der Annahme einer Geste geschieht
Bei der Annahme einer Geste kann Qt automatisch andere Gesten abbrechen, die zu anderen Zielen gehören. Die Richtlinie ist standardmäßig so eingestellt, dass keine anderen Gesten abgebrochen werden; sie kann jedoch so konfiguriert werden, dass alle aktiven Gesten im Kontext abgebrochen werden, beispielsweise für alle untergeordneten Widgets.
Zugriffsfunktionen:
| QGesture::GestureCancelPolicy | gestureCancelPolicy() const |
| void | setGestureCancelPolicy(QGesture::GestureCancelPolicy policy) |
[read-only] gestureType : Qt::GestureType
Diese Eigenschaft enthält den Typ der Geste
Zugriffsfunktionen:
| Qt::GestureType | gestureType() const |
[read-only] hasHotSpot : bool
Diese Eigenschaft gibt an, ob die Geste einen Hotspot hat
Zugriffsfunktionen:
| bool | hasHotSpot() const |
hotSpot : QPointF
Diese Eigenschaft enthält den Punkt, der zum Auffinden des Empfängers für das Gestenereignis verwendet wird.
Der Hotspot ist ein Punkt im globalen Koordinatensystem. Verwenden Sie „ QWidget::mapFromGlobal()“ oder „ QGestureEvent::mapToGraphicsScene()“, um einen lokalen Hotspot abzurufen.
Der Hotspot sollte vom Gestenerkennungsmodul festgelegt werden, um die Übermittlung von Gestenereignissen an ein ` QGraphicsObject` zu ermöglichen.
Zugriffsfunktionen:
| QPointF | hotSpot() const |
| void | setHotSpot(const QPointF &value) |
| void | unsetHotSpot() |
[read-only] state : Qt::GestureState
Diese Eigenschaft enthält den aktuellen Status der Geste
Zugriffsfunktionen:
| Qt::GestureState | state() const |
Dokumentation der Member-Funktionen
[explicit] QGesture::QGesture(QObject *parent = nullptr)
Erstellt ein neues Gestenobjekt mit dem angegebenen ` parent`.
QGesture-Objekte werden von Gestenerkennern in der Funktion ` QGestureRecognizer::create()` erstellt.
[virtual noexcept] QGesture::~QGesture()
Löscht das Gestenobjekt.
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.