Table Of Contents

Previous topic

QTabletEvent

Next topic

QMouseEvent

QWheelEvent

Synopsis

Functions

Detailed Description

The PySide.QtGui.QWheelEvent class contains parameters that describe a wheel event.

Wheel events are sent to the widget under the mouse cursor, but if that widget does not handle the event they are sent to the focus widget. The rotation distance is provided by PySide.QtGui.QWheelEvent.delta() . The functions PySide.QtGui.QWheelEvent.pos() and PySide.QtGui.QWheelEvent.globalPos() return the mouse cursor’s location at the time of the event.

A wheel event contains a special accept flag that indicates whether the receiver wants the event. You should call PySide.QtCore.QEvent.ignore() if you do not handle the wheel event; this ensures that it will be sent to the parent widget.

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

The event handler QWidget.wheelEvent() receives wheel events.

class PySide.QtGui.QWheelEvent(pos, globalPos, delta, buttons, modifiers[, orient=Qt.Vertical])
class PySide.QtGui.QWheelEvent(pos, delta, buttons, modifiers[, orient=Qt.Vertical])
Parameters:
  • deltaPySide.QtCore.int
  • orientPySide.QtCore.Qt.Orientation
  • globalPosPySide.QtCore.QPoint
  • modifiersPySide.QtCore.Qt.KeyboardModifiers
  • posPySide.QtCore.QPoint
  • buttonsPySide.QtCore.Qt.MouseButtons
PySide.QtGui.QWheelEvent.buttons()
Return type:PySide.QtCore.Qt.MouseButtons

Returns the mouse state when the event occurred.

PySide.QtGui.QWheelEvent.delta()
Return type:PySide.QtCore.int

Returns the distance that the wheel is rotated, in eighths of a degree. A positive value indicates that the wheel was rotated forwards away from the user; a negative value indicates that the wheel was rotated backwards toward the user.

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.

However, some mice have finer-resolution wheels and send delta values that are less than 120 units (less than 15 degrees). To support this possibility, you can either cumulatively add the delta values from events until the value of 120 is reached, then scroll the widget, or you can partially scroll the widget in response to each wheel event.

Example:

def wheelEvent(self, event):
    numDegrees = event.delta() / 8
    numSteps = numDegrees / 15

    if event->orientation() == Qt.Horizontal:
        scrollHorizontally(numSteps)
    else:
        scrollVertically(numSteps)
    event.accept()
PySide.QtGui.QWheelEvent.globalPos()
Return type:PySide.QtCore.QPoint

Returns the global position of the mouse pointer at the time of the event . This is important on asynchronous window systems such as X11; whenever you move your widgets around in response to mouse events, PySide.QtGui.QWheelEvent.globalPos() can differ a lot from the current cursor position returned by QCursor.pos() .

PySide.QtGui.QWheelEvent.globalX()
Return type:PySide.QtCore.int

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

PySide.QtGui.QWheelEvent.globalY()
Return type:PySide.QtCore.int

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

PySide.QtGui.QWheelEvent.orientation()
Return type:PySide.QtCore.Qt.Orientation

Returns the wheel’s orientation.

PySide.QtGui.QWheelEvent.pos()
Return type:PySide.QtCore.QPoint

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

If you move your widgets around in response to mouse events, use PySide.QtGui.QWheelEvent.globalPos() instead of this function.

PySide.QtGui.QWheelEvent.x()
Return type:PySide.QtCore.int

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

PySide.QtGui.QWheelEvent.y()
Return type:PySide.QtCore.int

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