Класс QGesture
Класс QGesture представляет жест, содержащий свойства, описывающие соответствующий ввод пользователя. Подробнее...
| Заголовок: | #include <QGesture> |
| qmake: | QT += widgets |
| С тех пор: | Qt 4.6 |
| Наследует: | QObject |
| Наследуется от: | QPanGesture, QPinchGesture, QSwipeGesture, QTapAndHoldGesture и QTapGesture |
Этот класс был введён в Qt 4.6.
Общедоступные типы
| Перечисление | GestureCancelPolicy { CancelNone, CancelAllInContext } |
Свойства
|
Общедоступные функции
| 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() |
Подробное описание
Объекты жестов не создаются разработчиками напрямую. Они создаются объектом 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) |
gestureType : const Qt::GestureType
Это свойство содержит тип жеста
Функции доступа:
| Qt::GestureType | gestureType() const |
hasHotSpot : const bool
Это свойство содержит информацию о том, имеет ли жест горячую точку
Функции доступа:
| bool | hasHotSpot() const |
hotSpot : QPointF
Это свойство содержит точку, используемую для поиска получателя события жеста.
Горячая точка — это точка в глобальной системе координат. Используйте QWidget::mapFromGlobal() или QGestureEvent::mapToGraphicsScene(), чтобы получить локальную горячую точку.
Горячая точка должна быть установлена распознавателем жестов для передачи события жеста в QGraphicsObject.
Функции доступа:
| QPointF | hotSpot() const |
| void | setHotSpot(const QPointF &value) |
| void | unsetHotSpot() |
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-5.13/qgesture.html