Auf dieser Seite

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.

KonstanteWertBeschreibung
QGesture::CancelNone0Bei der Annahme dieser Geste sind keine anderen Gesten betroffen.
QGesture::CancelAllInContext1Bei 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.