Класс QGesture
Класс QGesture представляет собой жест, содержащий свойства, описывающие соответствующий ввод пользователя. Подробнее...
| Заголовок: | #include <QGesture> |
| CMake: | find_package(Qt6 COMPONENTS Widgets REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::Widgets) |
| qmake: | QT += widgets |
| Наследуется от: | QObject |
| Наследует: | QPanGesture, QPinchGesture, QSwipeGesture, QTapAndHoldGesture и QTapGesture |
Типы
| Перечисление | GestureCancelPolicy { CancelNone, CancelAllInContext } |
Свойства
|
Открытые функции
| QGesture(QObject *parent = nullptr) | |
| виртуальный | ~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() |
Подробное описание
Объекты жестов не создаются разработчиками напрямую. Они создаются объектом QGestureRecognizer, зарегистрированным в приложении; см. QGestureRecognizer::registerRecognizer().
Обзор обработки жестов в Qt и информация об использовании жестов в ваших приложениях см. в документе Gestures in Widgets and Graphics View.
Свойства жеста
Класс имеет список свойств, которые пользователь может запросить, чтобы получить некоторые специфические для жеста аргументы. Например, жест pinch имеет коэффициент масштабирования, который отображается как свойство.
Разработчики пользовательских распознавателей жестов могут добавлять дополнительные свойства, чтобы предоставлять дополнительную информацию о жесте. Это можно сделать, добавив новые динамические свойства в объект QGesture или путем наследования класса QGesture (или одного из его подклассов).
Жизненный цикл объекта жеста
Экземпляр QGesture неявно создается при необходимости и принадлежит Qt. Разработчики не должны уничтожать их или хранить для последующего использования, так как Qt может уничтожить определенные экземпляры и создать новые для замены.
Зарегистрированный распознаватель жестов отслеживает события ввода для целевого объекта через свою функцию recognize(), обновляя свойства объекта жеста по мере необходимости.
Объект жеста может быть передан целевому объекту в QGestureEvent, если соответствующий жест активен или только что был отменен. Каждый передаваемый событие содержит список объектов жестов, так как поддержка более одного жеста может быть включена для целевого объекта. Из-за того, как обрабатываются события в Qt, события жестов могут быть отфильтрованы другими объектами.
См. также QGestureEvent и QGestureRecognizer.
Документация по типам членов
Перечисление QGesture::GestureCancelPolicy
Это перечисление описывает, как принятие жеста может автоматически отменять другие жесты.
| Константа | Значение | Описание |
|---|---|---|
QGesture::CancelNone |
0 |
При принятии этого жеста другие жесты не будут затронуты. |
QGesture::CancelAllInContext |
1 |
При принятии этого жеста все активные жесты в контексте (учитывая Qt::GestureFlag, которые были указаны при подписке на жест) будут отменены. |
Документация по свойствам
gestureCancelPolicy : QGesture::GestureCancelPolicy
Это свойство содержит политику принятия решения о том, что происходит при принятии жеста
При принятии одного жеста Qt может автоматически отменять другие жесты, принадлежащие другим целевым объектам. Политика обычно устанавливается так, чтобы не отменять другие жесты, и может быть установлена так, чтобы отменять все активные жесты в контексте. Например, для всех дочерних виджетов.
Функции доступа:
| QGesture::GestureCancelPolicy | gestureCancelPolicy() const |
| void | setGestureCancelPolicy(QGesture::GestureCancelPolicy policy) |
[read-only] gestureType : const Qt::GestureType
Это свойство содержит тип жеста
Функции доступа:
| Qt::GestureType | gestureType() const |
[read-only] hasHotSpot : const bool
Это свойство содержит информацию о том, имеет ли жест точку-горячую
Функции доступа:
| bool | hasHotSpot() const |
hotSpot : QPointF
Это свойство содержит точку, используемую для поиска получателя события жеста.
Точка-горячая — это точка в глобальной системе координат. Используйте QWidget::mapFromGlobal() или QGestureEvent::mapToGraphicsScene(), чтобы получить локальную точку-горячую.
Точка-горячая должна быть установлена распознавателем жестов для доставки события жеста в QGraphicsObject.
Функции доступа:
| QPointF | hotSpot() const |
| void | setHotSpot(const QPointF &value) |
| void | unsetHotSpot() |
[read-only] state : const Qt::GestureState
Это свойство содержит текущее состояние жеста
Функции доступа:
| Qt::GestureState | state() const |
Документация по функциям-членам
QGesture::QGesture(QObject *parent = nullptr)
Создаёт новый объект жеста с заданным parent.
Объекты QGesture создаются распознавателями жестов в функции QGestureRecognizer::create().
[virtual] QGesture::~QGesture()
Уничтожает объект жеста.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.1/qgesture.html