QNativeGestureEvent Class
Die Klasse QNativeGestureEvent enthält Parameter, die ein Gestenereignis beschreiben. Mehr...
Kopfzeile: | #include <QNativeGestureEvent> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Gui) target_link_libraries(mytarget PRIVATE Qt6::Gui) |
qmake: | QT += gui |
Vererbt: | QSinglePointEvent |
- Liste aller Mitglieder, einschließlich geerbter Mitglieder
- Veraltete Mitglieder
- QNativeGestureEvent ist Teil der Ereignis-Klassen.
Öffentliche Funktionen
(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 |
Detaillierte Beschreibung
Native Gestenereignisse werden vom Betriebssystem erzeugt, typischerweise durch Interpretation von Trackpad-Berührungsereignissen. Gestenereignisse sind High-Level-Ereignisse wie Zoomen, Drehen oder Schwenken. Mehrere Typen enthalten inkrementelle Werte: value() und delta() liefern die Differenz zwischen dem vorherigen Ereignis und dem aktuellen Ereignis.
Ereignis Typ | Beschreibung | Berührungssequenz |
---|---|---|
Qt::ZoomNativeGesture | Vergrößerungsdelta in Prozent. | macOS und Wayland: Aufdrücken mit zwei Fingern. |
Qt::SmartZoomNativeGesture | Boolescher Vergrößerungsstatus. | macOS: Doppeltes Tippen mit zwei Fingern (Trackpad) / Doppeltes Tippen mit einem Finger (Magic Mouse). |
Qt::RotateNativeGesture | Rotations-Delta in Grad. | macOS und Wayland: Drehen mit zwei Fingern. |
Qt::SwipeNativeGesture | Wischwinkel in Grad. | macOS: Konfigurierbar in den Trackpad-Einstellungen. |
Qt::PanNativeGesture | Verschiebungsdelta in Pixel. | Wayland: Drei oder mehr Finger, die sich als Gruppe in eine beliebige Richtung bewegen. |
Darüber hinaus werden BeginNativeGesture und EndNativeGesture vor und nach Gesten-Ereignisströmen gesendet:
BeginNativeGesture ZoomNativeGesture ZoomNativeGesture ZoomNativeGesture EndNativeGesture
Der Ereignisstrom kann verschachtelte Gesten verschiedener Typen enthalten: Die Zwei-Finger-Klemm-Geste beispielsweise erzeugt einen Strom von Zoom- und Dreh-Ereignissen, und PanNativeGesture kann je nach Plattform manchmal mit diesen verschachtelt sein.
Andere Typen sind eigenständige Ereignisse: SmartZoomNativeGesture und SwipeNativeGesture treten nur einmal auf, wenn die Geste erkannt wird.
Hinweis: Auf einem Touchpad ist das Bewegen von zwei Fingern als Gruppe (die Zwei-Finger-Schnipp-Geste) normalerweise dem Scrollen vorbehalten; in diesem Fall erzeugt Qt QWheelEvents. Dies ist der Grund, warum drei oder mehr Finger benötigt werden, um eine PanNativeGesture zu erzeugen.
Siehe auch Qt::NativeGestureType, QGestureEvent, und QWheelEvent.
Dokumentation der Mitgliedsfunktionen
[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)
Konstruiert ein natives Gestenereignis vom Typ type, das von device ausgeht und eine Geste auf scenePos beschreibt, an der fingerCount Finger beteiligt sind.
Die Punkte localPos, scenePos und globalPos geben die Gestenposition relativ zum empfangenden Widget oder Element, Fenster und Bildschirm bzw. Desktop an.
value hat eine gestenabhängige Interpretation: für RotateNativeGesture oder SwipeNativeGesture ist es ein Winkel in Grad. Bei ZoomNativeGesture ist value ein inkrementeller Skalierungsfaktor, in der Regel viel kleiner als 1, der angibt, dass die Skalierung des Zielelements wie folgt angepasst werden soll: item.scale = item.scale * (1 + event.value)
Für PanNativeGesture gibt delta den Abstand in Pixeln an, um den das Ansichtsfenster, das Widget oder das Element verschoben oder geschwenkt werden soll.
Hinweis: delta wird in einfacher Genauigkeit gespeichert (QVector2D), so dass delta() in einigen Fällen leicht abweichende Werte zurückgeben kann. Dies kann sich in zukünftigen Versionen von Qt noch ändern.
Diese Funktion wurde in Qt 6.2 eingeführt.
[since 6.2]
QPointF QNativeGestureEvent::delta() const
Gibt die seit dem letzten Ereignis zurückgelegte Entfernung in Pixeln zurück. Eine Pan-Geste gibt den Abstand in Pixeln an, um den das Ziel-Widget, -Element oder der Inhalt des Ansichtsfensters verschoben werden soll.
Diese Funktion wurde in Qt 6.2 eingeführt.
Siehe auch QPanGesture::delta().
[since 6.2]
int QNativeGestureEvent::fingerCount() const
Gibt die Anzahl der an der Geste beteiligten Finger zurück, falls bekannt. Wenn gestureType() Qt::BeginNativeGesture oder Qt::EndNativeGesture ist, ist diese Information oft unbekannt, und fingerCount() gibt 0
zurück.
Diese Funktion wurde in Qt 6.2 eingeführt.
Qt::NativeGestureType QNativeGestureEvent::gestureType() const
Gibt den Gesten-Typ zurück.
qreal QNativeGestureEvent::value() const
Gibt den Gestenwert zurück. Der Wert sollte auf der Grundlage des Gesten-Typs interpretiert werden. Eine Zoom-Geste liefert beispielsweise ein Delta des Skalierungsfaktors, während eine Rotate-Geste ein Delta der Drehung liefert.
Siehe auch QNativeGestureEvent und gestureType().
© 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.