En esta página

QHoverEvent Class

La clase QHoverEvent contiene parámetros que describen un evento de ratón. Más...

Cabecera: #include <QHoverEvent>
CMake: find_package(Qt6 REQUIRED COMPONENTS Gui)
target_link_libraries(mytarget PRIVATE Qt6::Gui)
qmake: QT += gui
Hereda: QSinglePointEvent

Funciones Públicas

QHoverEvent(QEvent::Type type, const QPointF &scenePos, const QPointF &globalPos, const QPointF &oldPos, Qt::KeyboardModifiers modifiers = Qt::NoModifier, const QPointingDevice *device = QPointingDevice::primaryPointingDevice())
QPoint oldPos() const
QPointF oldPosF() const

Descripción Detallada

Los eventos de ratón se producen cuando el cursor del ratón se mueve hacia, desde o dentro de un widget, y si el widget tiene el atributo Qt::WA_Hover.

La función position() da la posición actual del cursor, mientras que oldPos() da la posición anterior del ratón.

Hay algunas similitudes entre los eventos QEvent::HoverEnter y QEvent::HoverLeave, y los eventos QEvent::Enter y QEvent::Leave. Sin embargo, son ligeramente diferentes porque hacemos un update() en el manejador de eventos de HoverEnter y HoverLeave.

QEvent::HoverMove también es ligeramente diferente de QEvent::MouseMove. Consideremos una ventana de nivel superior A que contiene un hijo B que a su vez contiene un hijo C (todos con el seguimiento del ratón activado):

Captura de pantalla que muestra los widgets A, B, C apilados uno encima de otro

Ahora, si mueves el cursor desde arriba hacia abajo en el centro de A, obtendrás los siguientes eventos QEvent::MouseMove:

  1. A::MouseMove
  2. B::MovimientoDelRatón
  3. C::MovimientoDelRatón

Obtendrás los mismos eventos para QEvent::HoverMove, excepto que el evento siempre se propaga al nivel superior sin importar si el evento es aceptado o no. Sólo dejará de propagarse con el atributo Qt::WA_NoMousePropagation.

En este caso los eventos se producirán de la siguiente manera:

  1. A::HoverMove
  2. A::HoverMove, B::HoverMove
  3. A::HoverMove, B::HoverMove, C::HoverMove

Documentación de las funciones miembro

QHoverEvent::QHoverEvent(QEvent::Type type, const QPointF &scenePos, const QPointF &globalPos, const QPointF &oldPos, Qt::KeyboardModifiers modifiers = Qt::NoModifier, const QPointingDevice *device = QPointingDevice::primaryPointingDevice())

Construye un objeto de evento hover originado en device.

El parámetro type debe ser QEvent::HoverEnter, QEvent::HoverLeave, o QEvent::HoverMove.

scenePos es la posición actual del cursor del ratón relativa a la ventana o escena receptora, oldPos es su posición anterior y globalPos es la posición del ratón en coordenadas absolutas. modifiers mantiene el estado de todos los modificadores de teclado en el momento del evento.

QPoint QHoverEvent::oldPos() const

Devuelve la posición anterior del cursor del ratón, relativa al widget que recibió el evento. Si no hay posición anterior, oldPos() devolverá la misma posición que position().

En los eventos QEvent::HoverEnter, esta posición será siempre QPoint(-1, -1).

Véase también position().

QPointF QHoverEvent::oldPosF() const

Devuelve la posición anterior del cursor del ratón, relativa al widget que recibió el evento. Si no hay posición previa, oldPosF() devolverá la misma posición que position().

En los eventos QEvent::HoverEnter, esta posición será siempre QPointF(-1, -1).

Véase también position().

© 2026 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.