Qt之子类发送消息给父类
2019独角兽企业重金招聘Python工程师标准>>>
例子:比如QWidget发送消息给QApplication
在widget.cpp中重载event事件
#include <qDebug>
bool Widget::event(QEvent *e)
{
if(e->type() == QEvent::Close) //因为Widget的父类是app
{
qDebug() << "User event is comming";
}
return QWidget::event(e);
}
接收事件
#include "widget.h"
#include <QApplication>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
Widget w;
w.show();
// 发送一个Event给MyWidget
qDebug() << "begin send";
a.postEvent(&w, new QEvent(QEvent::User));
// sendEvent,建议用postEvent
qDebug() << "end send";
return a.exec();
}
//可以在程序任意地方qApp.postEvent(&w, new QEvent(QEvent::User));
转载于//my.oschina.net/u/3919756/blog/1982613
还没有评论,来说两句吧...