版权声明:本文为博主原创文章,转载需要注明出处。
RT,代码如下:
1
|
ui.btn_set->installEventFilter(
this
);
|
bool MousrHoverTest::eventFilter(QObject * watched, QEvent * event) { if (watched == ui.btn_status) { QHoverEvent *eve = (QHoverEvent*)event; if (eve->type() == QEvent::HoverEnter) { ui.widget->show(); } else if (eve->type() == QEvent::HoverLeave) { ui.widget->hide(); } return true; } return QWidget::eventFilter(watched, event); }
原因:eventFilter的实现的最后必须调用watcher基类的eventFilter函数以传递事件。 如果不调的话watcher的所有事件都将丢失。
解决:去掉return true;