QNativeGestureEvent Class
La classe QNativeGestureEvent contient des paramètres qui décrivent un événement gestuel. Plus d'informations...
| En-tête : | #include <QNativeGestureEvent> |
| CMake : | find_package(Qt6 REQUIRED COMPONENTS Gui)target_link_libraries(mytarget PRIVATE Qt6::Gui) |
| qmake : | QT += gui |
| Héritages : | QSinglePointEvent |
- Liste de tous les membres, y compris les membres hérités
- Membres dépréciés
- QNativeGestureEvent fait partie des classes d'événements.
Fonctions publiques
(since 6.2) | QNativeGestureEvent(Qt::NativeGestureType type, const QPointingDevice *device, int fingerCount, const QPointF &localPos, const QPointF &scenePos, const QPointF &globalPos, qreal value, const QPointF &delta, quint64 sequenceId = UINT64_MAX) |
(since 6.2) QPointF | delta() const |
(since 6.2) int | fingerCount() const |
| Qt::NativeGestureType | gestureType() const |
| qreal | value() const |
Description détaillée
Les événements gestuels natifs sont générés par le système d'exploitation, généralement en interprétant les événements tactiles du trackpad. Les événements gestuels sont des événements de haut niveau tels que le zoom, la rotation ou le panoramique. Plusieurs types contiennent des valeurs incrémentielles : ainsi, value() et delta() fournissent la différence entre l'événement précédent et l'événement actuel.
| Type d'événement | Description de l'événement | Séquence tactile |
|---|---|---|
| Qt::ZoomNativeGesture | Delta d'agrandissement en pourcentage. | macOS et Wayland : Pincement à deux doigts. |
| Qt::SmartZoomNativeGesture | État booléen de l'agrandissement. | macOS : Double tape à deux doigts (trackpad) / Double tape à un doigt (souris magique). |
| Qt::RotateNativeGesture | Delta de rotation en degrés. | macOS et Wayland : Rotation à deux doigts. |
| Qt::SwipeNativeGesture | Angle de balayage en degrés. | macOS : Configurable dans les paramètres du trackpad. |
| Qt::PanNativeGesture | Delta de déplacement en pixels. | Wayland : Trois doigts ou plus se déplaçant en groupe, dans n'importe quelle direction. |
En outre, BeginNativeGesture et EndNativeGesture sont envoyés avant et après les flux d'événements gestuels :
BeginNativeGesture ZoomNativeGesture ZoomNativeGesture ZoomNativeGesture EndNativeGesture
Le flux d'événements peut inclure des gestes entrelacés de différents types : par exemple, le geste de pincement à deux doigts génère un flux d'événements Zoom et Rotation, et PanNativeGesture peut parfois être entrelacé avec ceux-ci, en fonction de la plateforme.
D'autres types d'événements sont autonomes : SmartZoomNativeGesture et SwipeNativeGesture ne se produisent qu'une fois chaque fois que le geste est détecté.
Remarque : sur un pavé tactile, le déplacement de deux doigts en groupe (le geste de la pichenette à deux doigts) est généralement réservé au défilement ; dans ce cas, Qt génère des événements QWheelEvents. C'est la raison pour laquelle trois doigts ou plus sont nécessaires pour générer une PanNativeGesture.
Voir également Qt::NativeGestureType, QGestureEvent, et QWheelEvent.
Documentation des fonctions membres
[since 6.2] QNativeGestureEvent::QNativeGestureEvent(Qt::NativeGestureType type, const QPointingDevice *device, int fingerCount, const QPointF &localPos, const QPointF &scenePos, const QPointF &globalPos, qreal value, const QPointF &delta, quint64 sequenceId = UINT64_MAX)
Construit un événement gestuel natif de type type provenant de device et décrivant un geste à scenePos dans lequel les doigts de fingerCount sont impliqués.
Les points localPos, scenePos et globalPos indiquent la position du geste par rapport au widget ou à l'élément récepteur, à la fenêtre et à l'écran ou au bureau, respectivement.
value a une interprétation qui dépend du geste : pour RotateNativeGesture ou SwipeNativeGesture, il s'agit d'un angle en degrés. Pour ZoomNativeGesture, value est un facteur d'échelle incrémentiel, généralement très inférieur à 1, indiquant que l'élément cible doit voir son échelle ajustée comme suit : item.scale = item.scale * (1 + event.value)
Pour PanNativeGesture, delta indique la distance en pixels à laquelle la fenêtre, le widget ou l'élément doit être déplacé ou balayé.
Remarque : delta est stocké en simple précision (QVector2D), de sorte que delta() peut renvoyer des valeurs légèrement différentes dans certains cas. Ceci est susceptible d'être modifié dans les futures versions de Qt.
Cette fonction a été introduite dans Qt 6.2.
[since 6.2] QPointF QNativeGestureEvent::delta() const
Renvoie la distance parcourue depuis l'événement précédent, en pixels. Un geste Pan fournit la distance en pixels à laquelle le widget cible, l'élément ou le contenu de la fenêtre doit être déplacé.
Cette fonction a été introduite dans Qt 6.2.
Voir aussi QPanGesture::delta().
[since 6.2] int QNativeGestureEvent::fingerCount() const
Renvoie le nombre de doigts participant au geste, s'il est connu. Lorsque gestureType() est Qt::BeginNativeGesture ou Qt::EndNativeGesture, cette information est souvent inconnue et fingerCount() renvoie 0.
Cette fonction a été introduite dans Qt 6.2.
Qt::NativeGestureType QNativeGestureEvent::gestureType() const
Renvoie le type de geste.
qreal QNativeGestureEvent::value() const
Renvoie la valeur du geste. La valeur doit être interprétée en fonction du type de geste. Par exemple, un geste Zoom fournit un delta de facteur d'échelle tandis qu'un geste Rotate fournit un delta de rotation.
Voir également QNativeGestureEvent et gestureType().
© 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.