Qt 5.13 | Qt Quick | QML Types | PointerEvent QML Type

Qt 5.13.2 Reference Documentation

# PointerEvent QML Type

Provides information about an event from a pointing device. More...

Import Statement: | import QtQuick 2.13

- List of all members, including inherited members

## Properties

- button : enumeration
- buttons : int
- device : PointerDevice
- modifiers : int

## Detailed Description

A PointerEvent is an event describing contact or movement across a surface, provided by a mouse, a touchpoint (single finger on a touchscreen), or a stylus on a graphics tablet. The device property provides more information about where the event came from.

See also PointerHandler.

## Property Documentation

[read-only] button : enumeration

This property holds the button that caused the event, if any. If the device does not have buttons, or the event is a hover event, it will be `Qt.NoButton`.

[read-only] buttons : int

This property holds the combination of mouse or stylus buttons pressed when the event was generated. For move events, this is all buttons that are pressed down. For press events, this includes the button that caused the event, as well as any others that were already held. For release events, this excludes the button that caused the event.

[read-only] device : PointerDevice

This property holds the device that generated the event.

[read-only] modifiers : int

This property holds the keyboard modifier flags that existed 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();
              }
          }
      }