Spec-Zone.ru › Qt 5.9

Класс QHoverEvent

Класс QHoverEvent содержит параметры, описывающие событие наведения курсора мыши. Подробнее...

Заголовок: #include <QHoverEvent>
qmake: QT += gui
Наследует: QInputEvent
  • Список всех членов, включая унаследованные

Открытые функции

QHoverEvent(Тип type, const QPointF &pos, const QPointF &oldPos, Qt::KeyboardModifiers modifiers = Qt::NoModifier)
QPoint oldPos() const
const QPointF & oldPosF() const
QPoint pos() const
const QPointF & posF() const
  • 2 открытых функции унаследованы от QInputEvent
  • 6 открытых функций унаследованы от QEvent

Дополнительные унаследованные члены

  • 1 свойство унаследовано от QEvent
  • 1 статический открытый член унаследован от QEvent

Подробное описание

Класс QHoverEvent содержит параметры, описывающие событие наведения курсора мыши.

События наведения курсора мыши происходят, когда курсор мыши перемещается в, из или внутри виджета, и если у виджета есть атрибут Qt::WA_Hover.

Функция pos() возвращает текущую позицию курсора, а oldPos() — предыдущую позицию мыши.

Существует несколько сходств между событиями QEvent::HoverEnter и QEvent::HoverLeave, и событиями QEvent::Enter и QEvent::Leave. Однако они немного отличаются, потому что мы вызываем update() в обработчике событий HoverEnter и HoverLeave.

QEvent::HoverMove также немного отличается от QEvent::MouseMove. Рассмотрим окно верхнего уровня A, содержащее дочерний элемент B, который, в свою очередь, содержит дочерний элемент C (все с включенным отслеживанием мыши):

Теперь, если вы переместите курсор сверху вниз по середине A, вы получите следующие события QEvent::MouseMove:

  1. A::MouseMove
  2. B::MouseMove
  3. C::MouseMove

Вы получите те же события для QEvent::HoverMove, за исключением того, что событие всегда распространяется до верхнего уровня, независимо от того, принято ли событие или нет. Оно будет прекращать распространение только с атрибутом Qt::WA_NoMousePropagation.

В этом случае события будут происходить следующим образом:

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

Документация по функциям-членам

QHoverEvent::QHoverEvent(Тип type, const QPointF &pos, const QPointF &oldPos, Qt::KeyboardModifiers modifiers = Qt::NoModifier)

Создает объект события наведения курсора.

Параметр type должен быть QEvent::HoverEnter, QEvent::HoverLeave или QEvent::HoverMove.

pos — текущая позиция курсора мыши относительно принимающего виджета, а oldPos — его предыдущая позиция. modifiers содержит состояние всех модификаторов клавиатуры в момент события.

QPoint QHoverEvent::oldPos() const

Возвращает предыдущую позицию курсора мыши относительно виджета, который получил событие. Если нет предыдущей позиции, oldPos() вернёт ту же позицию, что и pos().

Для событий QEvent::HoverEnter эта позиция всегда будет QPoint(-1, -1).

См. также pos().

const QPointF &QHoverEvent::oldPosF() const

Возвращает предыдущую позицию курсора мыши относительно виджета, который получил событие. Если нет предыдущей позиции, oldPosF() вернёт ту же позицию, что и posF().

Для событий QEvent::HoverEnter эта позиция всегда будет QPointF(-1, -1).

См. также posF().

QPoint QHoverEvent::pos() const

Возвращает позицию курсора мыши относительно виджета, который получил событие.

Для событий QEvent::HoverLeave эта позиция всегда будет QPoint(-1, -1).

См. также oldPos().

const QPointF &QHoverEvent::posF() const

Возвращает позицию курсора мыши относительно виджета, который получил событие.

Для событий QEvent::HoverLeave эта позиция всегда будет QPointF(-1, -1).

См. также oldPosF().

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.9/qhoverevent.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API