Sur cette page

QGesture Class

La classe QGesture représente un geste et contient des propriétés qui décrivent l'action correspondante de l'utilisateur. En savoir plus...

En-tête : #include <QGesture>
CMake : find_package(Qt6 REQUIRED COMPONENTS Widgets)
target_link_libraries(mytarget PRIVATE Qt6::Widgets)
qmake : QT += widgets
Hérite de : QObject
Hérité par :

QPanGesture, QPinchGesture, QSwipeGesture, QTapAndHoldGesture, et QTapGesture

Types publics

enum GestureCancelPolicy { CancelNone, CancelAllInContext }

Propriétés

Fonctions publiques

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()

Description détaillée

Les objets « geste » ne sont pas créés directement par les développeurs. Ils sont créés par l'objet « QGestureRecognizer » enregistré auprès de l'application ; voir QGestureRecognizer::registerRecognizer().

Pour une présentation générale de la gestion des gestes dans Qt et des informations sur leur utilisation dans vos applications, consultez le document Gestes dans les widgets et la vue graphique.

Propriétés des gestes

La classe dispose d’une liste de propriétés que l’utilisateur peut interroger pour obtenir certains arguments spécifiques aux gestes. Par exemple, le geste de pincement dispose d’un facteur d’échelle qui est exposé en tant que propriété.

Les développeurs de détecteurs de gestes personnalisés peuvent ajouter des propriétés supplémentaires afin de fournir des informations complémentaires sur un geste. Cela peut se faire en ajoutant de nouvelles propriétés dynamiques à un objet `QGesture`, ou en créant une sous-classe de la classe `QGesture` (ou de l’une de ses sous-classes).

Cycle de vie d’un objet « Gesture »

Une instance de QGesture est créée implicitement lorsque cela est nécessaire et appartient à Qt. Les développeurs ne doivent jamais les détruire ni les stocker en vue d’une utilisation ultérieure, car Qt peut détruire certaines de ces instances et en créer de nouvelles pour les remplacer.

Le reconnaisseur de gestes enregistré surveille les événements d’entrée de l’objet cible via sa fonction ` recognize()`, en mettant à jour les propriétés de l’objet `Gesture` selon les besoins.

L’objet « geste » peut être transmis à l’objet cible via un événement ` QGestureEvent ` si le geste correspondant est actif ou vient d’être annulé. Chaque événement transmis contient une liste d’objets « geste », car la prise en charge de plusieurs gestes peut être activée pour l’objet cible. En raison de la manière dont les événements sont gérés dans Qt, les événements de geste peuvent être filtrés par d’autres objets.

Voir également QGestureEvent et QGestureRecognizer.

Documentation sur les types de membres

enum QGesture::GestureCancelPolicy

Cette énumération décrit comment l'acceptation d'un geste peut annuler automatiquement d'autres gestes.

ConstanteValeurDescription
QGesture::CancelNone0Lors de l’acceptation de ce geste, aucun autre geste ne sera affecté.
QGesture::CancelAllInContext1Lors de l'acceptation de ce geste, tous les gestes actifs dans le contexte (conformément aux « Qt::GestureFlag » spécifiées lors de l'abonnement au geste) seront annulés.

Documentation de la propriété

gestureCancelPolicy : QGesture::GestureCancelPolicy

Cette propriété définit la politique permettant de déterminer ce qui se passe lorsqu’un geste est accepté

Lorsqu'un geste est accepté, Qt peut automatiquement annuler d'autres gestes appartenant à d'autres cibles. La politique est normalement configurée pour ne pas annuler d'autres gestes, mais peut être configurée pour annuler tous les gestes actifs dans le contexte. Par exemple, pour tous les widgets enfants.

Fonctions d’accès :

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

[read-only] gestureType : Qt::GestureType

Cette propriété contient le type du geste

Fonctions d'accès :

Qt::GestureType gestureType() const

[read-only] hasHotSpot : bool

Cette propriété indique si le geste comporte une zone active

Fonctions d’accès :

bool hasHotSpot() const

hotSpot : QPointF

Cette propriété contient le point utilisé pour localiser le récepteur de l'événement de geste.

Le point actif est un point dans le système de coordonnées global ; utilisez QWidget::mapFromGlobal() ou QGestureEvent::mapToGraphicsScene() pour obtenir un point actif local.

Le point sensible doit être défini par le module de reconnaissance des gestes afin de permettre la transmission de l'événement de geste à un QGraphicsObject.

Fonctions d’accès :

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

[read-only] state : Qt::GestureState

Cette propriété contient l'état actuel du geste

Fonctions d'accès :

Qt::GestureState state() const

Documentation des fonctions membres

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

Crée un nouvel objet « geste » à partir de l'parent fournie.

Les objets `QGesture` sont créés par les reconnaisseurs de gestes dans la fonction ` QGestureRecognizer::create()`.

[virtual noexcept] QGesture::~QGesture()

Supprime l'objet « geste ».

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