PointerScrollEvent QML Type
Provides information about a scrolling event, such as from a mouse wheel. More...
Import Statement: | import QtQuick 2.15 |
Properties
- angleDelta : point
- buttons : int
- device : PointerDevice
- hasAngleDelta : bool
- hasPixelDelta : bool
- inverted : bool
- modifiers : int
- pixelDelta : point
Detailed Description
See also WheelHandler.
Property Documentation
angleDelta : point |
This property holds the distance that the wheel is rotated in wheel degrees. The x and y cordinate of this property holds the delta in horizontal and vertical orientation.
A positive value indicates that the wheel was rotated up/right; a negative value indicates that the wheel was rotated down/left.
Most mouse types work in steps of 15 degrees, in which case the delta value is a multiple of 120; i.e., 120 units * 1/8 = 15 degrees.
buttons : int |
This property holds the mouse buttons pressed when the wheel event was generated.
It contains a bitwise combination of:
[read-only] device : PointerDevice |
This property holds the device that generated the event.
hasAngleDelta : bool |
Returns whether the angleDelta property has a non-null value.
hasPixelDelta : bool |
Returns whether the pixelDelta property has a non-null value.
inverted : bool |
Returns whether the delta values delivered with the event are inverted.
Normally, a vertical wheel will produce a PointerScrollEvent with positive delta values if the top of the wheel is rotating away from the hand operating it. Similarly, a horizontal wheel movement will produce a PointerScrollEvent with positive delta values if the top of the wheel is moved to the left.
However, on some platforms this is configurable, so that the same operations described above will produce negative delta values (but with the same magnitude). In a QML component (such as a tumbler or a slider) where it is appropriate to synchronize the movement or rotation of an item with the direction of the wheel, regardless of the system settings, the wheel event handler can use the inverted property to decide whether to negate the angleDelta or pixelDelta values.
Note: Many platforms provide no such information. On such platforms, inverted
always returns false.
[read-only] modifiers : int |
This property holds the keyboard modifier keys that were pressed immediately before the event occurred.
It contains a bitwise combination of the following flags:
Constant | Description |
---|---|
Qt.NoModifier | No modifier key is pressed. |
Qt.ShiftModifier | A Shift key on the keyboard is pressed. |
Qt.ControlModifier | A Ctrl key on the keyboard is pressed. |
Qt.AltModifier | An Alt key on the keyboard is pressed. |
Qt.MetaModifier | A Meta key on the keyboard is pressed. |
Qt.KeypadModifier | A keypad button is pressed. |
For example, to react to a Shift key + Left mouse button click:
Item { TapHandler { onTapped: { if ((event.button == Qt.LeftButton) && (event.modifiers & Qt.ShiftModifier)) doSomething(); } } }
pixelDelta : point |
This property holds the delta in screen pixels and is available in platforms that have high-resolution trackpads, such as macOS. The x and y coordinates of this property hold the delta in horizontal and vertical orientation. The value should be used directly to scroll content on screen.
For platforms without high-resolution touchpad support, pixelDelta will always be (0,0), and angleDelta should be used instead.