QMouseEvent

The QMouseEvent class contains parameters that describe a mouse event. More

Inheritance diagram of PySide6.QtGui.QMouseEvent

Synopsis

Functions

Detailed Description

Mouse events occur when a mouse button is pressed or released inside a widget, or when the mouse cursor is moved.

Mouse move events will occur only when a mouse button is pressed down, unless mouse tracking has been enabled with setMouseTracking() .

Qt automatically grabs the mouse when a mouse button is pressed inside a widget; the widget will continue to receive mouse events until the last mouse button is released.

A mouse event contains a special accept flag that indicates whether the receiver wants the event. You should call ignore() if the mouse event is not handled by your widget. A mouse event is propagated up the parent widget chain until a widget accepts it with accept() , or an event filter consumes it.

Note

If a mouse event is propagated to a widget for which WA_NoMousePropagation has been set, that mouse event will not be propagated further up the parent widget chain.

The state of the keyboard modifier keys can be found by calling the modifiers() function, inherited from QInputEvent .

The position() function gives the cursor position relative to the widget or item that receives the mouse event. If you move the widget as a result of the mouse event, use the global position returned by globalPosition() to avoid a shaking motion.

The setEnabled() function can be used to enable or disable mouse and keyboard events for a widget.

Reimplement the QWidget event handlers, mousePressEvent() , mouseReleaseEvent() , mouseDoubleClickEvent() , and mouseMoveEvent() to receive mouse events in your own widgets.

See also

setMouseTracking() grabMouse() pos()

class PySide6.QtGui.QMouseEvent(type, localPos, button, buttons, modifiers[, device=QPointingDevice.primaryPointingDevice()])

PySide6.QtGui.QMouseEvent(type, localPos, globalPos, button, buttons, modifiers[, device=QPointingDevice.primaryPointingDevice()])

PySide6.QtGui.QMouseEvent(type, localPos, scenePos, globalPos, button, buttons, modifiers, source[, device=QPointingDevice.primaryPointingDevice()])

PySide6.QtGui.QMouseEvent(type, localPos, scenePos, globalPos, button, buttons, modifiers[, device=QPointingDevice.primaryPointingDevice()])

PySide6.QtGui.QMouseEvent(arg__1)

Parameters

Constructs a mouse event object originating from device.

The type parameter must be one of MouseButtonPress , MouseButtonRelease , MouseButtonDblClick , or MouseMove .

The localPos is the mouse cursor’s position relative to the receiving widget or item. The window position is set to the same value as localPos. The button that caused the event is given as a value from the MouseButton enum. If the event type is MouseMove , the appropriate button for this event is NoButton . The mouse and keyboard states at the time of the event are specified by buttons and modifiers.

The globalPosition() is initialized to pos() , which may not be appropriate. Use the other constructor to specify the global position explicitly.

Constructs a mouse event object originating from device.

The type parameter must be MouseButtonPress , MouseButtonRelease , MouseButtonDblClick , or MouseMove .

The localPos is the mouse cursor’s position relative to the receiving widget or item. The cursor’s position in screen coordinates is specified by globalPos. The window position is set to the same value as localPos. The button that caused the event is given as a value from the MouseButton enum. If the event type is MouseMove , the appropriate button for this event is NoButton . buttons is the state of all buttons at the time of the event, modifiers the state of all keyboard modifiers.

Constructs a mouse event object.

The type parameter must be MouseButtonPress , MouseButtonRelease , MouseButtonDblClick , or MouseMove .

The points localPos, scenePos and globalPos specify the mouse cursor’s position relative to the receiving widget or item, window, and screen or desktop, respectively.

The button that caused the event is given as a value from the MouseButton enum. If the event type is MouseMove , the appropriate button for this event is NoButton . buttons is the state of all buttons at the time of the event, modifiers is the state of all keyboard modifiers.

PySide6.QtGui.QMouseEvent.__repr__()
Return type

object

PySide6.QtGui.QMouseEvent.flags()
Return type

MouseEventFlags

Returns the mouse event flags.

The mouse event flags provide additional information about a mouse event.

See also

MouseEventFlag flags()

PySide6.QtGui.QMouseEvent.globalPos()
Return type

PySide6.QtCore.QPoint

Note

This function is deprecated.

Use globalPosition() .toPoint() instead.

Returns the global position of the mouse cursor at the time of the event. This is important on asynchronous window systems like X11. Whenever you move your widgets around in response to mouse events, may differ a lot from the current pointer position pos() , and from mapToGlobal ( pos() ).

See also

globalX() globalY()

PySide6.QtGui.QMouseEvent.globalX()
Return type

int

Note

This function is deprecated.

Use globalPosition() . x() instead.

Returns the global x position of the mouse cursor at the time of the event.

PySide6.QtGui.QMouseEvent.globalY()
Return type

int

Note

This function is deprecated.

Use globalPosition() . y() instead.

Returns the global y position of the mouse cursor at the time of the event.

PySide6.QtGui.QMouseEvent.localPos()
Return type

PySide6.QtCore.QPointF

Note

This function is deprecated.

Use position() instead.

Returns the position of the mouse cursor as a QPointF , relative to the widget or item that received the event.

If you move the widget as a result of the mouse event, use the screen position returned by screenPos() to avoid a shaking motion.

PySide6.QtGui.QMouseEvent.pos()
Return type

PySide6.QtCore.QPoint

Returns the position of the mouse cursor, relative to the widget that received the event.

If you move the widget as a result of the mouse event, use the global position returned by to avoid a shaking motion.

See also

x() y() globalPos()

PySide6.QtGui.QMouseEvent.screenPos()
Return type

PySide6.QtCore.QPointF

Note

This function is deprecated.

Use globalPosition() instead.

Returns the position of the mouse cursor as a QPointF , relative to the screen that received the event.

PySide6.QtGui.QMouseEvent.source()
Return type

MouseEventSource

Use pointingDevice() instead.

Returns information about the mouse event source.

The mouse event source can be used to distinguish between genuine and artificial mouse events. The latter are events that are synthesized from touch events by the operating system or Qt itself. This enum tells you from where it was synthesized; but often it’s more useful to know from which device it was synthesized, so try to use pointingDevice() instead.

Note

Many platforms provide no such information. On such platforms MouseEventNotSynthesized is returned always.

See also

MouseEventSource source()

PySide6.QtGui.QMouseEvent.windowPos()
Return type

PySide6.QtCore.QPointF

Note

This function is deprecated.

Use scenePosition() instead.

Returns the position of the mouse cursor as a QPointF , relative to the window that received the event.

If you move the widget as a result of the mouse event, use the global position returned by globalPos() to avoid a shaking motion.

PySide6.QtGui.QMouseEvent.x()
Return type

int

Note

This function is deprecated.

Use position() . instead.

Returns the x position of the mouse cursor, relative to the widget that received the event.

See also

y() pos()

PySide6.QtGui.QMouseEvent.y()
Return type

int

Note

This function is deprecated.

Use position() . instead.

Returns the y position of the mouse cursor, relative to the widget that received the event.

See also

x() pos()