Тип WheelEvent QML
Предоставляет информацию о событии прокрутки мыши Подробнее...
| Заявление импорта: | import QtQuick 2.7 |
Свойства
- accepted : bool
- angleDelta : point
- buttons : int
- inverted : int
- modifiers : int
- pixelDelta : point
- x : real
- y : real
Подробное описание
Позицию указателя мыши можно найти с помощью свойств x и y.
См. также MouseArea.
Документация по свойствам
accepted : bool
Установление accepted в значение true предотвращает распространение события прокрутки на элементы ниже этого элемента.
Как правило, если элемент реагирует на событие прокрутки, то он должен быть принят, чтобы элементы ниже по порядку стековки не реагировали на то же самое событие.
angleDelta : point
Это свойство содержит расстояние, на которое колесо прокрутки повернуто в градусах колеса. Координата x и y этого свойства содержат разницу в горизонтальном и вертикальном направлениях.
Положительное значение указывает, что колесо было повернуто вверх/вправо; отрицательное значение указывает, что колесо было повернуто вниз/влево.
Большинство типов мышей работают шагами по 15 градусов, в этом случае значение разницы является кратным 120; т. е. 120 единиц * 1/8 = 15 градусов.
buttons : int
Это свойство содержит нажатые кнопки мыши во время генерации события прокрутки.
Содержит побитовое сочетание:
- Qt.LeftButton
- Qt.RightButton
- Qt.MiddleButton
inverted : int
Возвращает, инвертированы ли значения разницы, передаваемые с событием.
В обычном случае вертикальное колесо прокрутки генерирует WheelEvent с положительными значениями разницы, если верхняя часть колеса вращается от руки, его управляющей. Аналогично, горизонтальное движение колеса прокрутки генерирует QWheelEvent с положительными значениями разницы, если верхняя часть колеса перемещается влево.
Однако на некоторых платформах это настраивается, так что те же самые операции, описанные выше, дадут отрицательные значения разницы (но с тем же значением). Например, в QML компоненте (например, регуляторе или ползунке), где уместно синхронизировать движение или вращение элемента с направлением колеса, независимо от настроек системы, обработчик событий колеса может использовать свойство inverted, чтобы решить, нужно ли умножать значения angleDelta или pixelDelta на -1.
Примечание: Многие платформы не предоставляют такой информации. На таких платформах inverted всегда возвращает false.
modifiers : int
Это свойство содержит флаги модификаторов клавиатуры, существовавшие непосредственно перед возникновением события.
Содержит побитовое сочетание:
- Qt.NoModifier - Ни одна клавиша модификатора не нажата.
- Qt.ShiftModifier - Нажата клавиша Shift на клавиатуре.
- Qt.ControlModifier - Нажата клавиша Ctrl на клавиатуре.
- Qt.AltModifier - Нажата клавиша Alt на клавиатуре.
- Qt.MetaModifier - Нажата клавиша Meta на клавиатуре.
- Qt.KeypadModifier - Нажата кнопка на дополнительной клавиатуре.
Например, для реакции на нажатие клавиши Control во время события прокрутки:
MouseArea {
onWheel: {
if (wheel.modifiers & Qt.ControlModifier) {
adjustZoom(wheel.angleDelta.y / 120);
}
}
} pixelDelta : point
Это свойство содержит разницу в пикселях экрана и доступно на платформах с высокоразрешающими трекпадами, такими как macOS. Координата x и y этого свойства содержат разницу в горизонтальном и вертикальном направлениях. Значение должно использоваться непосредственно для прокрутки содержимого на экране.
Для платформ без поддержки высокоразрешающих трекпадов pixelDelta всегда будет (0,0), и вместо него следует использовать angleDelta.
x : real
Эти свойства содержат координаты позиции, предоставленной событием прокрутки.
y : real
Эти свойства содержат координаты позиции, предоставленной событием прокрутки.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.9/qml-qtquick-wheelevent.html