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 |
出现鼠标事件,当鼠标光标移入/移出 Widget,或在 Widget 内移动时,且若小部件拥有 Qt::WA_Hover 属性。
函数 pos () 给出当前光标位置,而 oldPos () 给出旧鼠标位置。
有一些相似介于事件 QEvent::HoverEnter and QEvent::HoverLeave ,和事件 QEvent::Enter and QEvent::Leave 。不管怎样,它们略有不同,因为会进行 update() 在事件处理程序 HoverEnter and HoverLeave .
QEvent::HoverMove 也稍微不同于 QEvent::MouseMove 。让我们考虑顶层 A 窗口,其包含子级 B,而 B 又包含子级 C (都有启用鼠标跟踪):
现在,若将光标从 A 中间的顶部移到底部,将获得下列 QEvent::MouseMove 事件:
将获得相同事件 QEvent::HoverMove ,除事件始终会被传播给顶层外,不管事件是否被接受。它才会停止传播采用 Qt::WA_NoMousePropagation 属性。
在此情况下,事件将按下列方式出现:
构造悬停事件对象。
The type 参数必须是 QEvent::HoverEnter , QEvent::HoverLeave ,或 QEvent::HoverMove .
The pos 是相对于接收 Widget 的当前鼠标光标位置,而 oldPos 是它的先前这种位置。 modifiers 保持事件发生时所有键盘修饰符的状态。
返回鼠标光标的先前位置,相对接收事件 Widget。若没有先前位置,oldPos() 将返回相同位置如 pos ().
On QEvent::HoverEnter 事件,此位置将始终是 QPoint (-1, -1).
另请参阅 pos ().
返回鼠标光标的先前位置,相对接收事件 Widget。若没有先前位置,oldPosF() 将返回相同位置如 posF ().
On QEvent::HoverEnter 事件,此位置将始终是 QPointF (-1, -1).
另请参阅 posF ().
返回鼠标光标的位置,相对于接收事件的 Widget。
On QEvent::HoverLeave 事件,此位置将始终是 QPoint (-1, -1).
另请参阅 oldPos ().
返回鼠标光标的位置,相对于接收事件的 Widget。
On QEvent::HoverLeave 事件,此位置将始终是 QPointF (-1, -1).
另请参阅 oldPosF ().