Sur cette page

PinchArea QML Type

Permet la gestion simple des gestes de pincement. En savoir plus…

Import Statement: import QtQuick
Inherits:

Item

Propriétés

Signaux

Description détaillée

Une PinchArea est un élément invisible généralement utilisé en association avec un élément visible afin de permettre la gestion des gestes de pincement pour cet élément.

La propriété « enabled » permet d'activer ou de désactiver la gestion du pincement pour l'élément représenté. Lorsqu'elle est désactivée, la zone de pincement devient transparente aux événements de souris ou tactiles.

PinchArea peut être utilisé de deux façons :

  • en définissant une propriété « pinch.target » pour permettre une interaction automatique avec un élément
  • en utilisant les gestionnaires onPinchStarted, onPinchUpdated et onPinchFinished

Depuis Qt 5.5, PinchArea peut réagir aux événements de geste de pincement natifs du système d’exploitation s’ils sont disponibles ; sinon, elle ne réagit qu’aux événements tactiles.

Voir également PinchEvent, QNativeGestureEvent et QTouchEvent.

Documentation sur les propriétés

enabled : bool

Cette propriété indique si l'élément prend en charge les gestes de pincement.

La valeur par défaut de cette propriété est « true ».

pinch group

pinch.active : bool [read-only]

pinch.dragAxis : enumeration

pinch.maximumRotation : real

pinch.maximumScale : real

pinch.maximumX : real

pinch.maximumY : real

pinch.minimumRotation : real

pinch.minimumScale : real

pinch.minimumX : real

pinch.minimumY : real

pinch.target : Item

pinch offre un moyen pratique de faire réagir un élément aux gestes de pincement.

  • pinch.target Spécifie l'identifiant de l'élément à faire glisser.
  • pinch.active Spécifie si l'élément cible est actuellement en cours de glissement.
  • pinch.minimumScale et pinch.maximumScale limitent la plage de la propriété Item.scale, mais pas celle de la propriété PinchEvent scale .
  • pinch.minimumRotation et pinch.maximumRotation limitent la plage de la propriété Item.rotation, mais pas celle de la propriété PinchEvent rotation .
  • pinch.dragAxis Spécifie si le glissement est interdit (Pinch.NoDrag), s’il est possible horizontalement (Pinch.XAxis), verticalement (Pinch.YAxis) ou les deux (Pinch.XAndYAxis)
  • pinch.minimum et pinch.maximum limitent la distance sur laquelle la cible peut être glissée le long des axes correspondants.

Documentation sur les signaux

pinchFinished(PinchEvent pinch)

Ce signal est émis lorsque la zone de pincement détecte qu'un geste de pincement est terminé.

Le paramètre « pinch » (à ne pas confondre avec la propriété « pinch ») fournit des informations sur le geste de pincement, notamment l'échelle, le centre et l'angle du pincement.

Remarque : le gestionnaire correspondant est onPinchFinished.

pinchStarted(PinchEvent pinch)

Ce signal est émis lorsque la zone de pincement détecte le début d'un geste de pincement : deux points de contact (doigts) ont été détectés et se sont éloignés au-delà du seuil défini dans ` startDragDistance ` pour que le geste commence.

Le paramètre « pinch » (à ne pas confondre avec la propriété « pinch ») fournit des informations sur le geste de pincement, notamment l'échelle, le centre et l'angle du pincement. Au moment du signal « pinchStarted », ces valeurs sont réinitialisées à leurs valeurs par défaut, quels que soient les résultats des gestes précédents : « pinch.scale » sera « 1.0 » et « pinch.rotation » sera « 0.0 ». Au fur et à mesure que le geste progresse, « pinchUpdated » signalera l’écart par rapport à ces valeurs par défaut.

Pour ignorer ce geste, définissez la propriété « pinch.accepted » sur « false ». Le geste sera annulé et aucun autre événement ne sera envoyé.

Remarque : le gestionnaire correspondant est onPinchStarted.

pinchUpdated(PinchEvent pinch)

Ce signal est émis lorsque la zone de pincement détecte qu'un geste de pincement a changé.

Le paramètre ` pinch ` fournit des informations sur le geste de pincement, notamment l'échelle, le centre et l'angle du pincement. Ces valeurs reflètent uniquement les changements survenus depuis le début du geste en cours et ne sont donc pas limitées par les valeurs minimales et maximales définies dans la propriété ` pinch `.

Remarque : le gestionnaire correspondant est onPinchUpdated.

smartZoom(PinchEvent pinch)

Ce signal est émis lorsque la zone de pincement détecte un geste de zoom intelligent. Ce geste n'est pris en charge que sur certains systèmes d'exploitation, tels que macOS.

Le paramètre ` pinch ` fournit des informations sur le geste de pincement, notamment l'emplacement où il s'est produit. La valeur de ` pinch.scale ` sera supérieure à zéro lorsque le geste indique que l'utilisateur souhaite activer le zoom intelligent, et égale à zéro lors de la désactivation (même si, en général, le même geste est utilisé pour basculer entre ces deux états).

Remarque : le gestionnaire correspondant est onSmartZoom.

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