QMouseEvent Class

Die Klasse QMouseEvent enthält Parameter, die ein Mausereignis beschreiben. Mehr...

Kopfzeile: #include <QMouseEvent>
CMake: find_package(Qt6 REQUIRED COMPONENTS Gui)
target_link_libraries(mytarget PRIVATE Qt6::Gui)
qmake: QT += gui
Vererbungen: QSinglePointEvent

Öffentliche Funktionen

QMouseEvent(QEvent::Type type, const QPointF &localPos, const QPointF &globalPos, Qt::MouseButton button, Qt::MouseButtons buttons, Qt::KeyboardModifiers modifiers, const QPointingDevice *device = QPointingDevice::primaryPointingDevice())
QMouseEvent(QEvent::Type type, const QPointF &localPos, const QPointF &scenePos, const QPointF &globalPos, Qt::MouseButton button, Qt::MouseButtons buttons, Qt::KeyboardModifiers modifiers, const QPointingDevice *device = QPointingDevice::primaryPointingDevice())
Qt::MouseEventFlags flags() const

Detaillierte Beschreibung

Mausereignisse treten auf, wenn eine Maustaste innerhalb eines Widgets gedrückt oder losgelassen wird, oder wenn der Mauszeiger bewegt wird.

Mausbewegungsereignisse treten nur auf, wenn eine Maustaste gedrückt wird, es sei denn, die Mausverfolgung wurde mit QWidget::setMouseTracking() aktiviert.

Qt ergreift die Maus automatisch, wenn eine Maustaste innerhalb eines Widgets gedrückt wird; das Widget wird weiterhin Mausereignisse empfangen, bis die letzte Maustaste losgelassen wird.

Ein Mausereignis enthält ein spezielles Akzeptieren-Flag, das anzeigt, ob der Empfänger das Ereignis wünscht. Sie sollten ignore() aufrufen, wenn das Mausereignis nicht von Ihrem Widget verarbeitet wird. Ein Mausereignis wird in der Kette der übergeordneten Widgets weitergegeben, bis ein Widget es mit accept() annimmt oder ein Ereignisfilter es verbraucht.

Hinweis: Wenn ein Mausereignis an ein widget weitergegeben wird, für das Qt::WA_NoMousePropagation gesetzt wurde, wird dieses Mausereignis nicht weiter nach oben in der übergeordneten Widgetkette weitergegeben.

Der Zustand der Tastaturmodifikatortasten kann durch Aufruf der Funktion modifiers() ermittelt werden, die von QInputEvent geerbt wurde.

Die Funktion position() gibt die Cursorposition relativ zu dem Widget oder Element an, das das Mausereignis empfängt. Wenn Sie das Widget infolge des Mausereignisses verschieben, verwenden Sie die von globalPosition() zurückgegebene globale Position, um eine wackelnde Bewegung zu vermeiden.

Die Funktion QWidget::setEnabled() kann verwendet werden, um Maus- und Tastaturereignisse für ein Widget zu aktivieren oder zu deaktivieren.

Reimplementieren Sie die QWidget Event-Handler, QWidget::mousePressEvent(), QWidget::mouseReleaseEvent(), QWidget::mouseDoubleClickEvent() und QWidget::mouseMoveEvent(), um Mausereignisse in Ihren eigenen Widgets zu empfangen.

Siehe auch QWidget::setMouseTracking(), QWidget::grabMouse(), und QCursor::pos().

Dokumentation der Mitgliedsfunktionen

QMouseEvent::QMouseEvent(QEvent::Type type, const QPointF &localPos, const QPointF &globalPos, Qt::MouseButton button, Qt::MouseButtons buttons, Qt::KeyboardModifiers modifiers, const QPointingDevice *device = QPointingDevice::primaryPointingDevice())

Konstruiert ein Mausereignisobjekt, das von device stammt.

Der Parameter type muss QEvent::MouseButtonPress, QEvent::MouseButtonRelease, QEvent::MouseButtonDblClick, oder QEvent::MouseMove sein.

localPos ist die Position des Mauszeigers relativ zum empfangenden Widget oder Element. Die Position des Cursors in Bildschirmkoordinaten wird durch globalPos angegeben. Die Fensterposition wird auf denselben Wert wie localPos gesetzt. Das button, das das Ereignis ausgelöst hat, wird als Wert aus der Aufzählung Qt::MouseButton angegeben. Wenn das Ereignis type MouseMove ist, ist die entsprechende Schaltfläche für dieses Ereignis Qt::NoButton. buttons ist der Zustand aller Schaltflächen zum Zeitpunkt des Ereignisses, modifiers der Zustand aller Tastaturmodifikatoren.

QMouseEvent::QMouseEvent(QEvent::Type type, const QPointF &localPos, const QPointF &scenePos, const QPointF &globalPos, Qt::MouseButton button, Qt::MouseButtons buttons, Qt::KeyboardModifiers modifiers, const QPointingDevice *device = QPointingDevice::primaryPointingDevice())

Konstruiert ein Mausereignisobjekt.

Der Parameter type muss QEvent::MouseButtonPress, QEvent::MouseButtonRelease, QEvent::MouseButtonDblClick, oder QEvent::MouseMove sein.

Die Punkte localPos, scenePos und globalPos geben die Position des Mauszeigers relativ zum empfangenden Widget oder Element, Fenster und Bildschirm bzw. Desktop an.

Das button, das das Ereignis ausgelöst hat, wird als Wert aus der Aufzählung Qt::MouseButton angegeben. Wenn das Ereignis type MouseMove ist, ist die entsprechende Taste für dieses Ereignis Qt::NoButton. buttons ist der Zustand aller Tasten zum Zeitpunkt des Ereignisses, modifiers ist der Zustand aller Tastaturmodifikatoren.

Qt::MouseEventFlags QMouseEvent::flags() const

Gibt die Mausereignis-Flags zurück.

Die Mausereignis-Flags liefern zusätzliche Informationen über ein Mausereignis.

Siehe auch Qt::MouseEventFlag und QGraphicsSceneMouseEvent::flags().

© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.