QScrollerProperties 类

QScrollerProperties 类存储设置为 QScroller . 更多...

头: #include <QScrollerProperties>
CMake: find_package(Qt6 COMPONENTS Widgets REQUIRED)
target_link_libraries(mytarget PRIVATE Qt6::Widgets)
qmake: QT += widgets

公共类型

enum FrameRates { Fps60, Fps30, Fps20, Standard }
enum OvershootPolicy { OvershootWhenScrollable, OvershootAlwaysOff, OvershootAlwaysOn }
enum ScrollMetric { MousePressEventDelay, DragStartDistance, DragVelocitySmoothingFactor, AxisLockThreshold, ScrollingCurve, …, ScrollMetricCount }

公共函数

  QScrollerProperties (const QScrollerProperties & sp )
  QScrollerProperties ()
QScrollerProperties & operator= (const QScrollerProperties & sp )
virtual ~QScrollerProperties ()
QVariant scrollMetric (QScrollerProperties::ScrollMetric metric ) const
void setScrollMetric (QScrollerProperties::ScrollMetric metric , const QVariant & value )
bool operator!= (const QScrollerProperties & sp ) const
bool operator== (const QScrollerProperties & sp ) const

静态公共成员

void setDefaultScrollerProperties (const QScrollerProperties & sp )
void unsetDefaultScrollerProperties ()

详细描述

QScrollerProperties 类存储参数的使用通过 QScroller .

默认设置从属平台,以便 Qt 模拟动感卷动平台行为。

作为约定,QScrollerProperties 以物理单位 (米、秒) 为单位,且转换通过 QScroller 使用当前 DPI。

另请参阅 QScroller .

成员类型文档编制

enum QScrollerProperties:: FrameRates

此枚举描述当拖拽 (或滚动) 时使用的可用帧速率。

常量 描述
QScrollerProperties::Fps60 1 60 帧每秒
QScrollerProperties::Fps30 2 30 帧每秒
QScrollerProperties::Fps20 3 20 帧每秒
QScrollerProperties::Standard 0 默认值为 60 帧每秒 (相当于 QAbstractAnimation ).

enum QScrollerProperties:: OvershootPolicy

此枚举描述各种过冲模式。

常量 描述
QScrollerProperties::OvershootWhenScrollable 0 过冲是可能的,当内容可卷动时。这是默认。
QScrollerProperties::OvershootAlwaysOff 1 从不启用过冲,甚至在内容可卷动时。
QScrollerProperties::OvershootAlwaysOn 2 始终启用过冲,甚至在内容不可卷动时。

enum QScrollerProperties:: ScrollMetric

此枚举包含不同卷动规格类型。当没有另外指示时 setScrollMetric 函数期望 QVariant 为 qreal 类型。

QScroller 文档编制,了解不同值背后概念的进一步细节。

常量 描述
QScrollerProperties::MousePressEventDelay 0 这是鼠标按下事件的延迟时间,当开始轻弹手势按 [s] 。若手势的触发在该时间内,则不向滚动对象发送鼠标按下 (或释放)。若手势的触发在该延迟之后,则延迟鼠标按下加伪释放事件在全局位置 QPoint(-QWIDGETSIZE_MAX, -QWIDGETSIZE_MAX) 被发送。若手势被取消,则交付延迟鼠标按下加真释放事件两者。
QScrollerProperties::DragStartDistance 1 这是触摸点 (或鼠标点) 需要移动的最小距离,先于触发轻弹手势按 m .
QScrollerProperties::DragVelocitySmoothingFactor 2 描述最终卷动速度包括新拖拽速度的程度值。此值的范围应该介于 0 and 1 。值越低,拖拽速度的应用越平滑。
QScrollerProperties::AxisLockThreshold 3 将移动限制在一条轴,若移动在围绕轴的角度内。阈值范围必须介于 0 to 1 .
QScrollerProperties::ScrollingCurve 4 QEasingCurve 使用,在用户初启轻弹后降低卷动速度时。请注意,这是位置缓和曲线, not 速度:默认为 QEasingCurve::OutQuad ,导致速度线性下降 (一阶导数) 和常量减速 (二阶导数)。
QScrollerProperties::DecelerationFactor 5 此因子影响卷动器减速到 0 要花费多长时间。实际值从属选取的 ScrollingCurve。对于大多数类型,值范围应介于 0.1 to 2.0
QScrollerProperties::MinimumVelocity 6 在结束触摸 (或释放鼠标) 开始卷动后所需的最小速度按 m/s .
QScrollerProperties::MaximumVelocity 7 这是可以达到的最大速度按 m/s .
QScrollerProperties::MaximumClickThroughVelocity 8 这是透过点击所允许的最大卷动速度按 m/s 。这意味着点击目前 (缓慢) 卷动的对象不仅会停止滚动,还会将点击事件交付给 UI 控件。这很有用当使用指数型卷动曲线时。
QScrollerProperties::AcceleratingFlickMaximumTime 9 这是最大时间按 seconds 可以将轻弹手势识别成加速轻弹。若设为 0,不检测此类手势。"加速轻弹" 是对已卷动对象执行轻弹手势。在这种情况下,卷动速度是乘以 AcceleratingFlickSpeedupFactor 为加速它。
QScrollerProperties::AcceleratingFlickSpeedupFactor 10 当前速度乘以此数字若检测到加速轻弹。应该 >= 1 .
QScrollerProperties::SnapPositionRatio 11 这是用户必须在 2 捕捉点之间区域拖拽,以捕捉到下一位置的距离。 0.33 意味着卷动必须达到 2 捕捉点之间距离的 1/3 才能捕捉下一。比率必须介于 0 and 1 .
QScrollerProperties::SnapTime 12 这是滚动曲线的时间因子。较小值意味着卷动将花费更长时间。滚动距离独立于此值。
QScrollerProperties::OvershootDragResistanceFactor 13 此值是鼠标拖拽和实际滚动区域移动 (在过冲期间) 之间的因子。因子必须介于 0 and 1 .
QScrollerProperties::OvershootDragDistanceFactor 14 这是拖拽时过冲移动的最大距离。实际过冲距离是通过将此值乘以卷动对象的视口大小来计算的。因子必须介于 0 and 1 .
QScrollerProperties::OvershootScrollDistanceFactor 15 这是卷动时过冲移动的最大距离。实际过冲距离是通过将此值乘以卷动对象的视口大小来计算的。因子必须介于 0 and 1 .
QScrollerProperties::OvershootScrollTime 16 这是时间按 seconds 用于播放完整过冲动画。
QScrollerProperties::HorizontalOvershootPolicy 17 这是水平超调策略 (见 OvershootPolicy ).
QScrollerProperties::VerticalOvershootPolicy 18 这是水平超调策略 (见 OvershootPolicy ).
QScrollerProperties::FrameRate 19 这是拖拽 (或卷动) 时应使用的帧速率。 QScroller 使用 QAbstractAnimation 内部计时器将所有卷动操作同步到可能同时处于活动状态的其它动画。若每秒 60 帧的标准值太快,可以采用此设置降低它,同时仍是同步与 QAbstractAnimation 。请注意,仅当值为 FrameRates 枚举允许在这里。
QScrollerProperties::ScrollMetricCount 20 这始终是最后条目。

成员函数文档编制

QScrollerProperties:: QScrollerProperties (const QScrollerProperties & sp )

构造副本为 sp .

QScrollerProperties:: QScrollerProperties ()

构造新滚动条特性。

QScrollerProperties &QScrollerProperties:: operator= (const QScrollerProperties & sp )

赋值 sp 给这些卷动器特性并返回这些卷动器特性的引用。

[虚拟] QScrollerProperties:: ~QScrollerProperties ()

销毁卷动器特性。

QVariant QScrollerProperties:: scrollMetric ( QScrollerProperties::ScrollMetric metric ) const

查询 metric 值对于卷动器特性。

另请参阅 setScrollMetric () 和 ScrollMetric .

[static] void QScrollerProperties:: setDefaultScrollerProperties (const QScrollerProperties & sp )

设置卷动器特性对于所有新的 QScrollerProperties 对象到 sp .

使用此函数来覆盖由默认构造函数,返回的平台默认特性。若只想改变单个卷动器的卷动特性,使用 QScroller::setScrollerProperties ()

注意: 调用此函数不改变内容对于已存在的 QScrollerProperties 对象。

另请参阅 unsetDefaultScrollerProperties ().

void QScrollerProperties:: setScrollMetric ( QScrollerProperties::ScrollMetric metric , const QVariant & value )

设置特定值对于 metric ScrollerMetric 到 value .

另请参阅 scrollMetric () 和 ScrollMetric .

[static] void QScrollerProperties:: unsetDefaultScrollerProperties ()

将默认构造函数返回的卷动器特性,设置回平台默认特性。

另请参阅 setDefaultScrollerProperties ().

bool QScrollerProperties:: operator!= (const QScrollerProperties & sp ) const

返回 true 若这些卷动器特性不同于 sp ;否则返回 false .

bool QScrollerProperties:: operator== (const QScrollerProperties & sp ) const

返回 true 若这些卷动器特性等于 sp ;否则返回 false .