我想处理QEvent::WindowDeactive,为此,我在我的QMainWindow derieved类上重载了这个函数。
class MainWindow : public QMainWindow
....
bool event(QEvent * e);
....
bool MainWindow::event(QEvent *e)
{
if(e->type() == QEvent::WindowDeactivate){
//do smth
}
}
之后,此事件函数开始拦截我程序中的所有其他事件。此窗口中的所有按钮和小部件在单击鼠标时停止反应,键盘事件也会被截获。有没有办法解决这个问题?
我解决了问题:必须添加
return QWidget::event(e);
在事件实施结束时。在那之后 - 一切正常。