- Qt 6.8
- Qt Quick
- QML Types
- MouseEvent
- Qt 6.8.0 Reference Documentation

# MouseEvent QML Type

Provides information about a mouse event. More...

Import Statement: | import QtQuick

- List of all members, including inherited members
- Deprecated members

## Properties

- accepted : bool
- button : enumeration
- buttons : int
- flags : int
- modifiers : int
- wasHeld : bool
- x : real
- y : real

## Detailed Description

The position of the mouse can be found via the x and y properties. The button that caused the event is available via the button property.

See also MouseArea.

## Property Documentation

x : real `[read-only]`
y : real `[read-only]`

These properties hold the coordinates of the position supplied by the mouse event.

accepted : bool

Setting accepted to true prevents the mouse event from being propagated to items below this item.

Generally, if the item acts on the mouse event then it should be accepted so that items lower in the stacking order do not also respond to the same event.

button : enumeration `[read-only]`

This property holds the button that caused the event. It can be one of:

- Qt.LeftButton
- Qt.RightButton
- Qt.MiddleButton

buttons : int `[read-only]`

This property holds the mouse buttons pressed when the event was generated. For mouse move events, this is all buttons that are pressed down. For mouse press and double click events this includes the button that caused the event. For mouse release events this excludes the button that caused the event.

It contains a bitwise combination of:

- Qt.LeftButton
- Qt.RightButton
- Qt.MiddleButton

flags : int `[read-only]`

This property holds the flags that provide additional information about the mouse event.

- Qt.MouseEventCreatedDoubleClick - Indicates that Qt has created a double click event from this event. This flag is set in the event originating from a button press, and not in the resulting double click event.

modifiers : int `[read-only]`

This property holds the keyboard modifier flags that existed immediately before the event occurred.

It contains a bitwise combination of:

- 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:

     MouseArea {
         onClicked: (mouse)=> {
             if ((mouse.button == Qt.LeftButton) && (mouse.modifiers & Qt.ShiftModifier))
                 doSomething();
         }
     }

wasHeld : bool `[read-only]`

This property is true if the mouse button has been held pressed longer than the threshold (800ms).