QGesture Class

Die Klasse QGesture repräsentiert eine Geste und enthält Eigenschaften, die die entsprechende Benutzereingabe beschreiben. Mehr...

Kopfzeile: #include <QGesture>
CMake: find_package(Qt6 REQUIRED COMPONENTS Widgets)
target_link_libraries(mytarget PRIVATE Qt6::Widgets)
qmake: QT += widgets
Vererbt: QObject
Vererbt von:

QPanGesture, QPinchGesture, QSwipeGesture, QTapAndHoldGesture, und 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()

Detaillierte Beschreibung

Gestenobjekte werden nicht direkt von Entwicklern erstellt. Sie werden von dem QGestureRecognizer Objekt erstellt, das bei der Anwendung registriert ist; siehe QGestureRecognizer::registerRecognizer().

Einen Überblick über die Handhabung von Gesten in Qt und Informationen zur Verwendung von Gesten in Ihren Anwendungen finden Sie im Dokument Gesten in Widgets und Grafikansichten.

Gesten-Eigenschaften

Die Klasse hat eine Liste von Eigenschaften, die vom Benutzer abgefragt werden können, um einige gestenspezifische Argumente zu erhalten. Die Pinch-Geste verfügt beispielsweise über einen Skalierungsfaktor, der als Eigenschaft angezeigt wird.

Entwickler von benutzerdefinierten Gestenerkennern können weitere Eigenschaften hinzufügen, um zusätzliche Informationen über eine Geste bereitzustellen. Dies kann durch Hinzufügen neuer dynamischer Eigenschaften zu einem QGesture-Objekt oder durch Unterklassifizierung der QGesture-Klasse (oder einer ihrer Unterklassen) geschehen.

Lebenszyklus eines Gestenobjekts

Eine QGesture-Instanz wird implizit erstellt, wenn sie benötigt wird, und ist Eigentum von Qt. Entwickler sollten sie niemals zerstören oder für eine spätere Verwendung aufbewahren, da Qt bestimmte Instanzen von ihnen zerstören und neue erstellen kann, um sie zu ersetzen.

Der registrierte Gestenerkenner überwacht die Eingabeereignisse für das Zielobjekt über seine Funktion recognize() und aktualisiert die Eigenschaften des Gestenobjekts nach Bedarf.

Das Gestenobjekt kann an das Zielobjekt in einer QGestureEvent geliefert werden, wenn die entsprechende Geste aktiv ist oder gerade abgebrochen wurde. Jedes Ereignis, das ausgeliefert wird, enthält eine Liste von Gestenobjekten, da für das Zielobjekt die Unterstützung für mehr als eine Geste aktiviert sein kann. Aufgrund der Art, wie Ereignisse in Qt gehandhabt werden, können Gestenereignisse durch andere Objekte gefiltert werden.

Siehe auch QGestureEvent und QGestureRecognizer.

Dokumentation der Mitgliedstypen

enum QGesture::GestureCancelPolicy

Diese Aufzählung beschreibt, wie das Akzeptieren einer Geste andere Gesten automatisch abbrechen kann.

KonstanteWertBeschreibung
QGesture::CancelNone0Beim Akzeptieren dieser Geste werden keine anderen Gesten beeinflusst.
QGesture::CancelAllInContext1Beim Akzeptieren dieser Geste werden alle Gesten, die im Kontext aktiv sind (unter Beachtung der Qt::GestureFlag, die beim Abonnieren der Geste angegeben wurden), abgebrochen.

Dokumentation der Eigenschaft

gestureCancelPolicy : QGesture::GestureCancelPolicy

Diese Eigenschaft legt fest, was beim Akzeptieren einer Geste geschieht

Beim Akzeptieren einer Geste kann Qt automatisch andere Gesten abbrechen, die zu anderen Zielen gehören. Die Richtlinie ist normalerweise so eingestellt, dass keine anderen Gesten abgebrochen werden und kann so eingestellt werden, dass alle aktiven Gesten im Kontext abgebrochen werden. Zum Beispiel für alle untergeordneten Widgets.

Zugriffsfunktionen:

QGesture::GestureCancelPolicy gestureCancelPolicy() const
void setGestureCancelPolicy(QGesture::GestureCancelPolicy policy)

[read-only] gestureType : const Qt::GestureType

Diese Eigenschaft enthält den Typ der Geste

Zugriffsfunktionen:

Qt::GestureType gestureType() const

[read-only] hasHotSpot : const bool

Diese Eigenschaft gibt an, ob die Geste einen Hotspot hat

Zugriffsfunktionen:

bool hasHotSpot() const

hotSpot : QPointF

Diese Eigenschaft enthält den Punkt, der verwendet wird, um den Empfänger für das Gestenereignis zu finden.

Der Hot-Spot ist ein Punkt im globalen Koordinatensystem; verwenden Sie QWidget::mapFromGlobal() oder QGestureEvent::mapToGraphicsScene(), um einen lokalen Hot-Spot zu erhalten.

Der Hot-Spot sollte vom Gestenerkenner gesetzt werden, um die Zustellung von Gestenereignissen an eine QGraphicsObject zu ermöglichen.

Zugriffsfunktionen:

QPointF hotSpot() const
void setHotSpot(const QPointF &value)
void unsetHotSpot()

[read-only] state : const Qt::GestureState

Diese Eigenschaft enthält den aktuellen Zustand der Geste

Zugriffsfunktionen:

Qt::GestureState state() const

Dokumentation der Mitgliedsfunktionen

[explicit] QGesture::QGesture(QObject *parent = nullptr)

Konstruiert ein neues Gestenobjekt mit der angegebenen parent.

QGesture-Objekte werden von Gestenerkennern mit der Funktion QGestureRecognizer::create() erstellt.

[virtual noexcept] QGesture::~QGesture()

Zerstört das Gestenobjekt.

© 2025 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.