Spec-Zone.ru › Qt 5.11

Тип QML WheelEvent

Предоставляет информацию о событии вращения мыши. Подробнее...

Заявление об импорте: import QtQuick 2.11
  • Список всех членов, включая унаследованные

Свойства

  • 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/archives/qt-5.11/qml-qtquick-wheelevent.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API