Spec-Zone.ru › Qt 5.11

Класс QHoverEvent

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

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

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

QHoverEvent(QEvent::Type 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
  • 7 открытых функций унаследованы от QEvent

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

  • 1 свойство унаследовано от QEvent
  • 1 открытая переменная унаследована от QEvent
  • 1 статическая открытая функция унаследована от QEvent
  • 2 защищённые переменные унаследованы от QEvent

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

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

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

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

Существует несколько сходств между событиями QEvent::HoverEnter и QEvent::HoverLeave, и событиями QEvent::Enter и QEvent::Leave. Однако они немного отличаются, потому что в обработчике событий 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(QEvent::Type 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/archives/qt-5.11/qhoverevent.html

Spec-Zone.ru

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