Класс QScrollerProperties
Класс QScrollerProperties хранит настройки для QScroller. Подробнее...
| Заголовок: | #include <QScrollerProperties> |
| qmake: | QT += widgets |
| С момента: | Qt 4.8 |
Этот класс был представлен в Qt 4.8.
Типы public
| перечисление | FrameRates { Fps60, Fps30, Fps20, Standard } |
| перечисление | OvershootPolicy { OvershootWhenScrollable, OvershootAlwaysOff, OvershootAlwaysOn } |
| перечисление | ScrollMetric { MousePressEventDelay, DragStartDistance, DragVelocitySmoothingFactor, AxisLockThreshold, ScrollingCurve, …, ScrollMetricCount } |
Функции public
| 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 |
Статические public члены
| void | setDefaultScrollerProperties(const QScrollerProperties &sp) |
| void | unsetDefaultScrollerProperties() |
Подробное описание
Класс QScrollerProperties хранит параметры, используемые QScroller.
Значения по умолчанию зависят от платформы, так что Qt эмулирует поведение платформы для кинетического прокручивания.
В соответствии с соглашениями QScrollerProperties находятся в физических единицах (метр, секунды) и преобразуются QScroller с использованием текущей DPI.
См. также QScroller.
Документация по типу членов
перечисление QScrollerProperties::FrameRates
Это перечисление описывает доступные частоты кадров, используемые во время перетаскивания или прокрутки.
| Константа | Значение | Описание |
|---|---|---|
QScrollerProperties::Fps60 |
1 |
60 кадров в секунду |
QScrollerProperties::Fps30 |
2 |
30 кадров в секунду |
QScrollerProperties::Fps20 |
3 |
20 кадров в секунду |
QScrollerProperties::Standard |
0 |
Значение по умолчанию - 60 кадров в секунду (что соответствует QAbstractAnimation). |
перечисление QScrollerProperties::OvershootPolicy
Это перечисление описывает различные режимы перехвата.
| Константа | Значение | Описание |
|---|---|---|
QScrollerProperties::OvershootWhenScrollable |
0 |
Перехват возможен, когда содержимое прокручивается. Это значение по умолчанию. |
QScrollerProperties::OvershootAlwaysOff |
1 |
Перехват никогда не включается, даже когда содержимое прокручивается. |
QScrollerProperties::OvershootAlwaysOn |
2 |
Перехват всегда включен, даже если содержимое не прокручивается. |
перечисление QScrollerProperties::ScrollMetric
Это перечисление содержит различные типы метрик прокрутки. Если не указано иное, функция setScrollMetric ожидает QVariant типа qreal.
См. документацию QScroller для получения дополнительной информации о концепциях, лежащих в основе различных значений.
| Постоянная | Значение | Описание |
|---|---|---|
QScrollerProperties::MousePressEventDelay |
0 |
Это время задержки события нажатия мыши при запуске жеста "flick" в [s]. Если жест инициируется в течение этого времени, событие нажатия или отпускания мыши не отправляется на прокручиваемый объект. Если жест инициируется после этой задержки, отправляется задержанное событие нажатия мыши и имитируемое событие отпускания в глобальных координатах QPoint(-QWIDGETSIZE_MAX, -QWIDGETSIZE_MAX). Если жест отменён, то отправляются и задержанное событие нажатия, и реальное событие отпускания. |
QScrollerProperties::DragStartDistance |
1 |
Это минимальное расстояние, на которое необходимо переместить точку касания или указатель мыши, прежде чем будет инициирован жест "flick" в m. |
QScrollerProperties::DragVelocitySmoothingFactor |
2 |
Значение, определяющее, в какой степени новые скорости перемещения учитываются в окончательной скорости прокрутки. Это значение должно находиться в диапазоне от 0 до 1. Чем ниже значение, тем больше сглаживается скорость перемещения при прокрутке. |
QScrollerProperties::AxisLockThreshold |
3 |
Ограничивает движение по одной оси, если перемещение находится в пределах угла вокруг этой оси. Порог должен быть в диапазоне от 0 до 1. |
QScrollerProperties::ScrollingCurve |
4 |
Кривая сглаживания QEasingCurve, используемая при замедлении скорости прокрутки после инициирования жеста "flick" пользователем. Обратите внимание, что это кривая сглаживания для позиций, а не для скорости: по умолчанию используется QEasingCurve::OutQuad, что приводит к линейному уменьшению скорости (первая производная) и постоянному замедлению (вторая производная). |
QScrollerProperties::DecelerationFactor |
5 |
Этот множитель влияет на то, как долго прокручиваемый элемент замедляется до нулевой скорости. Фактическое значение зависит от выбранной кривой прокрутки. Для большинства типов значение должно быть в диапазоне от 0.1 до 2.0 |
QScrollerProperties::MinimumVelocity |
6 |
Минимальная скорость, необходимая после окончания касания или отпускания мыши для начала прокрутки в m/s. |
QScrollerProperties::MaximumVelocity |
7 |
Это максимальная скорость, которая может быть достигнута в m/s. |
QScrollerProperties::MaximumClickThroughVelocity |
8 |
Это максимальная разрешенная скорость прокрутки для клика сквозь прокручиваемый объект в m/s. Это означает, что щелчок по объекту, который в данный момент медленно прокручивается, не только остановит прокрутку, но и отправит событие щелчка на элемент пользовательского интерфейса. Это полезно при использовании кривых прокрутки экспоненциального типа. |
QScrollerProperties::AcceleratingFlickMaximumTime |
9 |
Это максимальное время в seconds, которое может занять жест "flick", чтобы быть распознанным как ускоряющий жест "flick". Если значение равно нулю, такие жесты не обнаруживаются. "Ускоряющий жест" — это жест "flick", выполняемый на объекте, который уже прокручивается. В таких случаях скорость прокрутки умножается на AcceleratingFlickSpeedupFactor для ускорения. |
QScrollerProperties::AcceleratingFlickSpeedupFactor |
10 |
Текущая скорость умножается на это число, если обнаружен ускоряющий жест "flick". Должно быть >= 1. |
QScrollerProperties::SnapPositionRatio |
11 |
Это расстояние, которое пользователь должен переместить область между двумя точками фиксации, чтобы зафиксировать её в следующем положении. 0.33 означает, что прокрутка должна достичь только одной трети расстояния между двумя точками фиксации, чтобы зафиксироваться на следующей. Коэффициент должен находиться в диапазоне от 0 до 1. |
QScrollerProperties::SnapTime |
12 |
Это коэффициент времени для кривой прокрутки. Более низкое значение означает, что прокрутка займёт больше времени. Расстояние прокрутки не зависит от этого значения. |
QScrollerProperties::OvershootDragResistanceFactor |
13 |
Это коэффициент между перемещением мыши и фактическим перемещением области прокрутки (при переходе за пределы). Коэффициент должен быть в диапазоне от 0 до 1. |
QScrollerProperties::OvershootDragDistanceFactor |
14 |
Это максимальное расстояние для перемещений с переходом за пределы во время перетаскивания. Фактическое расстояние перехода за пределы вычисляется путём умножения этого значения на размер области просмотра прокручиваемого объекта. Коэффициент должен быть в диапазоне от 0 до 1. |
QScrollerProperties::OvershootScrollDistanceFactor |
15 |
Это максимальное расстояние для перемещений с переходом за пределы во время прокрутки. Фактическое расстояние перехода за пределы вычисляется путём умножения этого значения на размер области просмотра прокручиваемого объекта. Коэффициент должен быть в диапазоне от 0 до 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 этим свойствам прокрутки и возвращает ссылку на эти свойства прокрутки.
[virtual] 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.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.15/qscrollerproperties.html