QGestureEvent 类

QGestureEvent 类提供了触发手势的描述。 更多信息...

头文件 #include <QGestureEvent>
CMakefind_package(Qt6 REQUIRED COMPONENTS Widgets)
target_link_libraries(mytarget PRIVATE Qt6::Widgets)
qmakeQT += widgets
继承 QEvent

公共函数

QGestureEvent(const QList<QGesture *> &gestures)
虚拟~QGestureEvent()
voidaccept(QGesture *gesture)
voidaccept(Qt::GestureType gestureType)
QList<QGesture *>activeGestures() const
QList<QGesture *>canceledGestures() const
QGesture *gesture(Qt::GestureType type) const
QList<QGesture *>gestures() const
voidignore(QGesture *gesture)
voidignore(Qt::GestureType gestureType)
boolisAccepted(QGesture *gesture) const
boolisAccepted(Qt::GestureType gestureType) const
QPointFmapToGraphicsScene(const QPointF &gesturePoint) const
voidsetAccepted(QGesture *gesture, bool value)
voidsetAccepted(Qt::GestureType gestureType, bool value)
QWidget *widget() const

详细描述

QGestureEvent 类包含一个手势列表,可以使用 gestures() 函数获取。

手势可以是活动状态或已取消状态。可以使用 activeGestures() 函数获取当前正在执行的手势列表。使用 canceledGestures() 函数可以访问之前处于活动状态但已取消的手势列表。例如,如果当前窗口失去焦点、超时或其他原因,可能会导致手势取消。

如果事件处理程序不通过调用通用的 QEvent::accept() 函数来接受事件,所有未被接受且处于 Qt::GestureStarted 状态的 QGesture 对象将沿着父小部件链向上传播,直到某个小部件单独接受它们,通过为每个对象调用 QGestureEvent::accept(),或者事件过滤器消耗了事件。

进一步阅读

有关 Qt 中手势处理的概述以及在应用程序中使用手势的信息,请参阅 小部件和图形视图中手势 文档。

另请参阅QGestureQGestureRecognizerQWidget::grabGesture() 和 QGraphicsObject::grabGesture

成员函数文档

[显式] QGestureEvent::QGestureEvent(const QList<QGesture> &gestures)

创建一个新的 QGestureEvent,它包含一个手势列表。

[虚函数 noexcept] QGestureEvent ::~QGestureEvent()

销毁 QGestureEvent。

void QGestureEvent::accept(QGesture *gesture)

设置给定 gesture 对象的接受标志,相当于调用 setAccepted(gesture, true)。

设置接受标志表示事件接收器希望接收手势。不希望的手势可能被传播到父小部件。

另请参阅QGestureEvent::ignore

void QGestureEvent ::accept(Qt::GestureType gestureType)

设置给定 gestureType 的接受标志,相当于调用 setAccepted(gestureType, true)。

设置接受标志表示事件接收器希望接收手势。不希望的手势可能被传播到父小部件。

另请参阅QGestureEvent::ignore

QList<QGesture> QGestureEvent ::activeGestures() const

返回一个活动手势(未取消)的列表。

QList<QGesture> QGestureEvent ::canceledGestures() const

返回一个已取消手势的列表。

QGesture *QGestureEvent ::gesture(Qt::GestureType type) const

通过 type 返回一个手势对象。

QList<QGesture> QGestureEvent ::gestures() const

返回事件中传递的所有手势。

void QGestureEvent ::ignore(QGesture *gesture)

清除给定 gesture 对象的接受标志参数,相当于调用 setAccepted(gesture, false)。

清除接受标志表示事件接收器不想接收手势。不期望的手势可能会被传播到父小部件。

另请参阅QGestureEvent::accept().

void QGestureEvent::ignore(Qt::GestureType gestureType)

清除给定gestureType的接受标志参数,相当于调用setAccepted(gesture, false)。

清除接受标志表示事件接收器不想接收手势。不期望的手势可能会被传播到父小部件。

另请参阅QGestureEvent::accept().

bool QGestureEvent::isAccepted(QGesture *gesture) const

如果gesture被接受则返回true;否则返回false

bool QGestureEvent::isAccepted(Qt::GestureType gestureType) const

如果类型为gestureType的手势被接受则返回true;否则返回false

QPointF QGestureEvent::mapToGraphicsScene(const QPointF &gesturePoint) const

如果gesturePoint位于图形视图中,则返回场景局部坐标。

此功能可能在将手势事件传递给QGraphicsObject以将屏幕坐标中的点转换为场景局部坐标时很有用。

另请参阅QPointF::isNull().

void QGestureEvent::setAccepted(QGesture *gesture, bool value)

将给定gesture对象的接受标志设置为指定的value

设置接受标志表示事件接收器想要gesture。不期望的手势可能会被传播到父小部件。

默认情况下,QEvent::Gesture类型的事件中的手势被接受,而QEvent::GestureOverride事件中的手势被忽略。

为了方便,也可以使用accept(gesture)来设置接受标志,并使用ignore(gesture)清除标志。

另请参阅isAccepted().

void QGestureEvent::setAccepted(Qt::GestureType gestureType, bool value)

将给定gestureType对象的接受标志设置为指定的value

设置接受标志表示事件接收器想要接收指定类型gestureType的手势。不期望的手势可能会被传播到父小部件。

默认情况下,QEvent::Gesture类型的事件中的手势被接受,而QEvent::GestureOverride事件中的手势被忽略。

为了方便,也可以使用accept(gestureType)来设置接受标志,并使用ignore(gestureType)清除标志。

QWidget *QGestureEvent::widget() const

返回事件发生的小部件。

© 2024 Qt公司有限公司。本文件中包含的文档贡献各有其所有者的版权。所提供的文档以自由软件基金会发布的GNU自由文档许可证版本1.3的条款进行许可。Qt及其相关标志是芬兰及其他国家和地区的Qt公司有限公司的商标。所有其他商标均为各自所有者的财产。