关于QEventFilter的疑问
一个Qwidget A。里面有一个QStackedWidget。stackedWidget会控制显示很多QWdget
现在有一个需求。
我要在A上面过滤掉鼠标右键的Release事件、不论是点击子控件还是A本身还是stackedWidget。
在QWidget A上我安装了一个eventFilter
代码如下
bool AntsMenu::eventFilter(QObject *obj,QEvent *e)
{
if (obj == &menuWidget || obj == ui.label)
{
qDebug()<<"Class Name:"<<obj->metaObject()->className();
if (e->type() == QEvent::MouseButtonRelease)
{
qDebug()<<"Mouse Button Release!"<<AntsMenu::level;
QMouseEvent *eMouse = static_cast<QMouseEvent*>(e);
if (eMouse->button() == Qt::RightButton)
{
qDebug()<<"Mouse Right Button Release!"<<AntsMenu::level;
goBack();
return true;
}
}
}
return QWidget::eventFilter(obj,e);
}
点击到某些控件。。比如QComboBox,QlineEdit时,右键Release是不会打印的。。。。
难道eventFilter不能过滤率这个吗?
求解~~~