QPinchGesture Class
QPinchGesture 类描述了用户做出的捏合手势。更多
Header: | #include <QPinchGesture> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Widgets) target_link_libraries(mytarget PRIVATE Qt6::Widgets) |
qmake: | QT += widgets |
继承: | QGesture |
公共类型
enum | ChangeFlag { ScaleFactorChanged, RotationAngleChanged, CenterPointChanged } |
flags | ChangeFlags |
属性
|
|
公共功能
virtual | ~QPinchGesture() |
QPointF | centerPoint() const |
QPinchGesture::ChangeFlags | changeFlags() const |
QPointF | lastCenterPoint() const |
qreal | lastRotationAngle() const |
qreal | lastScaleFactor() const |
qreal | rotationAngle() const |
qreal | scaleFactor() const |
void | setCenterPoint(const QPointF &value) |
void | setChangeFlags(QPinchGesture::ChangeFlags value) |
void | setLastCenterPoint(const QPointF &value) |
void | setLastRotationAngle(qreal value) |
void | setLastScaleFactor(qreal value) |
void | setRotationAngle(qreal value) |
void | setScaleFactor(qreal value) |
void | setStartCenterPoint(const QPointF &value) |
void | setTotalChangeFlags(QPinchGesture::ChangeFlags value) |
void | setTotalRotationAngle(qreal value) |
void | setTotalScaleFactor(qreal value) |
QPointF | startCenterPoint() const |
QPinchGesture::ChangeFlags | totalChangeFlags() const |
qreal | totalRotationAngle() const |
qreal | totalScaleFactor() const |
详细说明
捏合手势是一种触摸用户输入形式,用户通常用拇指和手指触摸输入设备上的两个点,然后将它们移近或移远,以改变用户界面的比例系数、缩放或细节级别。
有关 Qt 中手势处理的概述以及在应用程序中使用手势的信息,请参阅《Widgets 和图形视图中的手势》文档。
用户可以在一个地方继续触摸输入设备,然后在一个新的点上进行第二次触摸,继续手势操作,而不是重复应用同一个捏合手势。出现这种情况时,手势事件将继续传递到目标对象,其中包含一个处于Qt::GestureUpdated 状态的 QPinchGesture 实例。
另请参阅 QPanGesture 和QSwipeGesture 。
成员类型文档
枚举 QPinchGesture::ChangeFlag
flags QPinchGesture::ChangeFlags
该枚举描述了手势对象属性可能发生的变化。
常量 | 值 | 描述 |
---|---|---|
QPinchGesture::ScaleFactorChanged | 0x1 | 由scaleFactor 保存的缩放因子发生变化。 |
QPinchGesture::RotationAngleChanged | 0x2 | rotationAngle 保存的旋转角度发生变化。 |
QPinchGesture::CenterPointChanged | 0x4 | centerPoint 持有的中心点已更改。 |
ChangeFlags 类型是QFlags<ChangeFlag> 的类型定义。它存储 ChangeFlag 值的 OR 组合。
另请参阅 changeFlags 和totalChangeFlags 。
属性文档
centerPoint : QPointF
该属性保存当前的中心点
中心点是手势中两个输入点之间的中点。
访问功能:
QPointF | centerPoint() const |
void | setCenterPoint(const QPointF &value) |
另请参阅 startCenterPoint 和lastCenterPoint 。
changeFlags : ChangeFlags
该属性包含当前步骤中发生变化的手势属性。
该属性表示自上一个手势事件包含该手势信息以来,其他哪些属性发生了变化。您可以使用该信息来确定用户界面的哪个方面需要更新。
访问功能:
QPinchGesture::ChangeFlags | changeFlags() const |
void | setChangeFlags(QPinchGesture::ChangeFlags value) |
另请参阅 totalChangeFlags,scaleFactor,rotationAngle 和centerPoint 。
lastCenterPoint : QPointF
此属性保存为该手势记录的中心点的最后位置
访问功能:
QPointF | lastCenterPoint() const |
void | setLastCenterPoint(const QPointF &value) |
另请参阅 centerPoint 和startCenterPoint 。
lastRotationAngle : qreal
该属性保留了手势运动最后报告的角度。
上一次旋转角度为rotationAngle 属性中报告的角度,当时该手势的上一个手势事件已经发布。
访问功能:
qreal | lastRotationAngle() const |
void | setLastRotationAngle(qreal value) |
另请参阅 rotationAngle 和totalRotationAngle 。
lastScaleFactor : qreal
此属性包含此手势最后记录的比例因子
最后一个比例因子包含scaleFactor 属性中报告的比例因子,当时前一个手势事件包含有关此手势的信息。
如果之前没有任何事件包含此手势的信息(即此手势对象包含手势中第一个动作的信息),则此属性为零。
访问功能:
qreal | lastScaleFactor() const |
void | setLastScaleFactor(qreal value) |
另请参见 scaleFactor 和totalScaleFactor 。
rotationAngle : qreal
该属性保留手势动作所覆盖的角度
访问功能:
qreal | rotationAngle() const |
void | setRotationAngle(qreal value) |
另请参阅 totalRotationAngle 和lastRotationAngle 。
scaleFactor : qreal
该属性保存当前的比例因子
缩放因子用于测量与用户在触摸设备上的两个输入之间的距离相关的缩放因子。
访问功能:
qreal | scaleFactor() const |
void | setScaleFactor(qreal value) |
另请参阅 totalScaleFactor 和lastScaleFactor 。
startCenterPoint : QPointF
此属性保存中心点的起始位置
访问功能:
QPointF | startCenterPoint() const |
void | setStartCenterPoint(const QPointF &value) |
另请参阅 centerPoint 和lastCenterPoint 。
totalChangeFlags : ChangeFlags
该属性表示手势中发生变化的属性。
该属性表示手势开始后其他哪些属性发生了变化。您可以使用此信息来确定用户界面的哪个方面需要更新。
访问功能:
QPinchGesture::ChangeFlags | totalChangeFlags() const |
void | setTotalChangeFlags(QPinchGesture::ChangeFlags value) |
另请参阅 changeFlags,scaleFactor,rotationAngle, 和centerPoint 。
totalRotationAngle : qreal
该属性表示手势覆盖的总角度
该总角度测量手势覆盖的全部角度。通常,它等于rotationAngle 属性的值,除非如上所述,用户通过移除和重新定位其中一个触摸点来执行多次旋转。在这种情况下,总角度将是手势多个阶段的旋转角度之和。
访问功能:
qreal | totalRotationAngle() const |
void | setTotalRotationAngle(qreal value) |
另请参见 rotationAngle 和lastRotationAngle 。
totalScaleFactor : qreal
该属性保存总比例因子
总比例因子用于度量比例因子从原始值到当前比例因子的总变化。
访问函数:
qreal | totalScaleFactor() const |
void | setTotalScaleFactor(qreal value) |
另请参阅 scaleFactor 和lastScaleFactor 。
© 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.