QEventPoint Class

QEventPoint 类提供有关QPointerEvent 中一个点的信息 ... 更多...

头文件: #include <QEventPoint>
CMake: find_package(Qt6 REQUIRED COMPONENTS Gui)
target_link_libraries(mytarget PRIVATE Qt6::Gui)
qmake: QT += gui
Qt 6.0

公共类型

enum State { Unknown, Stationary, Pressed, Updated, Released }
flags States

属性

公共功能

QEventPoint(int pointId, QEventPoint::State state, const QPointF &scenePosition, const QPointF &globalPosition)
QEventPoint(const QEventPoint &other)
QEventPoint(QEventPoint &&other)
~QEventPoint()
const QPointingDevice *device() const
QSizeF ellipseDiameters() const
QPointF globalGrabPosition() const
QPointF globalLastPosition() const
QPointF globalPosition() const
QPointF globalPressPosition() const
QPointF grabPosition() const
int id() const
bool isAccepted() const
QPointF lastPosition() const
ulong lastTimestamp() const
QPointF normalizedPosition() const
QPointF position() const
QPointF pressPosition() const
ulong pressTimestamp() const
qreal pressure() const
qreal rotation() const
QPointF sceneGrabPosition() const
QPointF sceneLastPosition() const
QPointF scenePosition() const
QPointF scenePressPosition() const
void setAccepted(bool accepted = true)
QEventPoint::State state() const
qreal timeHeld() const
ulong timestamp() const
QPointingDeviceUniqueId uniqueId() const
QVector2D velocity() const
bool operator!=(const QEventPoint &other) const
QEventPoint &operator=(QEventPoint &&other)
QEventPoint &operator=(const QEventPoint &other)
bool operator==(const QEventPoint &other) const

详细说明

成员类型文档

枚举 QEventPoint::State
flags QEventPoint::States

指定此事件点的状态。

常量描述
QEventPoint::UnknownQt::TouchPointUnknownState未知状态。
QEventPoint::StationaryQt::TouchPointStationary事件点未移动。
QEventPoint::PressedQt::TouchPointPressed触摸点或按钮被按下。
QEventPoint::UpdatedQt::TouchPointMoved事件点已更新。
QEventPoint::ReleasedQt::TouchPointReleased触摸点或按钮被释放。

状态类型是QFlags<State> 的类型定义。它存储状态值的 OR 组合。

属性文档

accepted : bool

该属性保存事件点的接受状态。

在基于 Widget 的应用程序中,这个属性不会被使用,因为只有 Widget 接受或拒绝一个完整的QInputEvent 才有意义。

但在Qt Quick 中,项目或事件处理程序通常只接受QTouchEvent 中实际参与手势的单个点,而其他点则可以传递给其他项目或处理程序。为了保持一致,这适用于任何QPointerEvent ;只有当QPointerEvent 中的所有点都被接受后,才会进行交付。

访问功能:

bool isAccepted() const
void setAccepted(bool accepted = true)

另请参阅 QEvent::accepted

[read-only] device : const QPointingDevice*

该属性用于保存事件点的指向设备。

访问功能:

const QPointingDevice *device() const

[read-only] ellipseDiameters : const QSizeF

该属性保存触摸点边界椭圆的宽度和高度。

返回值以逻辑像素为单位。大多数触摸屏无法检测接触点的形状,鼠标或平板设备也无法检测,因此最常用的值是空大小。在某些触摸屏上,直径可能不为零且始终相等(椭圆近似为圆)。

访问功能:

QSizeF ellipseDiameters() const

[read-only] globalGrabPosition : const QPointF

此属性保存抓取此点时的全局位置。

全局位置相对于屏幕或虚拟桌面。

访问功能:

QPointF globalGrabPosition() const

另请参阅 globalPosition,grabPosition, 和sceneGrabPosition

[read-only] globalLastPosition : const QPointF

此属性保存此点在上一次按下或移动事件中的全局位置。

全局位置相对于屏幕或虚拟桌面。

访问功能:

QPointF globalLastPosition() const

另请参阅 globalPosition,lastPosition, 和sceneLastPosition

[read-only] globalPosition : const QPointF

此属性保存此点的全局位置。

全局位置相对于屏幕或虚拟桌面。

访问功能:

QPointF globalPosition() const

另请参阅 globalPressPosition,position, 和scenePosition

[read-only] globalPressPosition : const QPointF

此属性保存按下此点时的全局位置。

全局位置相对于屏幕或虚拟桌面。

访问功能:

QPointF globalPressPosition() const

另请参阅 globalPosition,pressPosition, 和scenePressPosition

[read-only] grabPosition : const QPointF

该属性用于保存该点被抓取时的位置。

该位置相对于接收事件的部件或项目。

访问功能:

QPointF grabPosition() const

另请参阅 position

[read-only] id : const int

此属性保存此事件点的 ID 编号。

注意: 不要假设 ID 号从零开始或它们是连续的。由于底层驱动程序的工作方式,这种假设往往是错误的。

访问功能:

int id() const

[read-only] lastPosition : const QPointF

此属性保存此点在上一次按下或移动事件中的位置。

该位置相对于接收事件的部件或项目。

访问功能:

QPointF lastPosition() const

另请参阅 positionpressPosition

[read-only] lastTimestamp : const ulong

该属性保存从包含该点的上一个QPointerEvent 开始的时间。

访问功能:

ulong lastTimestamp() const

另请参阅 globalLastPosition

[read-only] position : const QPointF

此属性保存此点的位置。

该位置相对于接收事件的部件或项目。

访问功能:

QPointF position() const

[read-only] pressPosition : const QPointF

该属性用于保存该点被按下时的位置。

该位置相对于接收事件的 widget 或项目。

访问功能:

QPointF pressPosition() const

另请参阅 position

[read-only] pressTimestamp : const ulong

此属性保存按下此点的最近时间。

访问功能:

ulong pressTimestamp() const

另请参阅 timestamp

[read-only] pressure : const qreal

该属性保存此点的压力。

返回值范围为0.01.0

访问功能:

qreal pressure() const

[read-only] rotation : const qreal

该属性用于保存该点的角度方向。

返回值的单位是度,其中零(默认值)表示手指、令牌或触控笔朝上,负角表示向左旋转,正角表示向右旋转。大多数触摸屏无法检测旋转,因此零是最常用的值。

访问功能:

qreal rotation() const

[read-only] sceneGrabPosition : const QPointF

此属性保存抓取此点时的场景位置。

如果在QQuickItem::event() 中处理,则场景位置是相对于QQuickWindow 的位置;如果通过重载 QGraphicsItem::touchEvent() 处理,则场景位置是QGraphicsScene 坐标;在 widget 应用程序中,则是窗口位置。

访问函数:

QPointF sceneGrabPosition() const

另请参阅 scenePosition,grabPosition, 和globalGrabPosition

[read-only] sceneLastPosition : const QPointF

此属性保存此点在上一次按下或移动事件中的场景位置。

如果在QQuickItem::event() 中处理,则场景位置是相对于QQuickWindow 的位置;如果通过重载 QGraphicsItem::touchEvent() 来处理,则场景位置是以QGraphicsScene 坐标表示的位置;在 widget 应用程序中,场景位置则是窗口位置。

访问函数:

QPointF sceneLastPosition() const

另请参阅 scenePositionscenePressPosition

[read-only] scenePosition : const QPointF

此属性保存此点的场景位置。

如果在QQuickItem::event() 中处理,场景位置就是相对于QQuickWindow 的位置;如果通过重载 QGraphicsItem::touchEvent() 处理,场景位置就是以QGraphicsScene 坐标表示的位置;在 widget 应用程序中,场景位置就是窗口位置。

访问函数:

QPointF scenePosition() const

另请参阅 scenePressPosition,position, 和globalPosition

[read-only] scenePressPosition : const QPointF

此属性保存按下此点时的场景位置。

如果在QQuickItem::event() 中处理,则场景位置是相对于QQuickWindow 的位置;如果通过覆盖 QGraphicsItem::touchEvent() 来处理,则场景位置是以QGraphicsScene 坐标表示的位置;在 widget 应用程序中,则是窗口位置。

访问函数:

QPointF scenePressPosition() const

另请参阅 scenePosition,pressPosition, 和globalPressPosition

[read-only] state : const State

该属性保存事件点的当前状态。

访问功能:

QEventPoint::State state() const

[read-only] timeHeld : const qreal

该属性保存该点按下后未释放的持续时间(以秒为单位)。

访问功能:

qreal timeHeld() const

另请参阅 pressTimestamptimestamp

[read-only] timestamp : const ulong

该属性保存了QPointerEvent 中包含该点的最近时间。

访问函数:

ulong timestamp() const

另请参阅 QPointerEvent::timestamp() 。

[read-only] uniqueId : const QPointingDeviceUniqueId

此属性保存此点或标记的唯一 ID(如果有)。

它通常是无效的(参见isValid()) ,因为触摸屏无法唯一识别手指。

当它来自QTabletEvent 时,可识别使用中的触控笔序列号。

当 TUIO 驱动程序与支持这些标记的触摸屏一起使用时,它可以识别特定的标记(靶标)。

访问功能:

QPointingDeviceUniqueId uniqueId() const

[read-only] velocity : const QVector2D

此属性保存屏幕或桌面坐标系中的速度向量,单位为像素/秒。

注意: 如果设备的功能包括QInputDevice::Velocity ,则表示速度来自操作系统(也许是触摸硬件或驱动程序提供的)。但通常不会设置Velocity 能力,这表明速度是由 Qt XML 计算的,使用简单的卡尔曼滤波器提供平滑的平均速度,而不是瞬时值。实际上,它显示的是用户在过去几个事件中拖动该点的速度和方向,其中最近的事件影响最大。

访问功能:

QVector2D velocity() const

另请参阅 QInputDevice::capabilities() 和QInputEvent::device()。

成员函数文档

QEventPoint::QEventPoint(int pointId, QEventPoint::State state, const QPointF &scenePosition, const QPointF &globalPosition)

用给定的pointId,state,scenePositionglobalPosition 构建一个事件点。

[noexcept] QEventPoint::QEventPoint(const QEventPoint &other)

通过制作other 的浅层副本来构建事件点。

[noexcept] QEventPoint::QEventPoint(QEventPoint &&other)

通过移动other 构建事件点。

[noexcept] QEventPoint::~QEventPoint()

销毁事件点。

QPointF QEventPoint::normalizedPosition() const

返回该点的归一化位置。

坐标的计算方法是将globalPosition() 转换到QInputDevice::availableVirtualGeometry() 的空间,即(0, 0) 为左上角,(1, 1) 为右下角。

另请参见 globalPosition

[noexcept] bool QEventPoint::operator!=(const QEventPoint &other) const

如果此事件点不等于other ,则返回true ,否则返回false

[noexcept] QEventPoint &QEventPoint::operator=(QEventPoint &&other)

移动--为该事件点实例分配other

[noexcept] QEventPoint &QEventPoint::operator=(const QEventPoint &other)

为该事件点指定other ,并返回对该事件点的引用。

[noexcept] bool QEventPoint::operator==(const QEventPoint &other) const

如果此事件点等于other ,则返回true ,否则返回false

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