Qt中eventFilter事件出现莫名其妙的错误
#ifndef CESHI_H
#define CESHI_H
#include <QtGui/QMainWindow>
#include "ui_ceshi.h"
class ceshi : public QMainWindow
{
Q_OBJECT
public:
ceshi(QWidget *parent = 0, Qt::WFlags flags = 0);
~ceshi();
protected:
bool eventFilter(QObject *object, QEvent *e);
private:
Ui::ceshiClass ui;
};
#endif // CESHI_H
//cpp
#include "ceshi.h"
ceshi::ceshi(QWidget *parent, Qt::WFlags flags)
: QMainWindow(parent, flags)
{
ui.setupUi(this);
ui.label->installEventFilter(this);
}
ceshi::~ceshi()
{
}
bool ceshi::eventFilter(QObject *object, QEvent *e)
{
return true;
}
测试过程是这样的 我用设计师画了一个界面 上面放了一个QLabel 然后添加了一个图片 运行后神奇的发现图片不见了 惊讶了一下 然后将 ui.label->installEventFilter(this);这句注视掉 图片又出来了 或者注释调eventFilter这个函数 图片也会出现 很莫名其妙 实验了Qt两个版本 4.7.3 和Qt5.0.2 求大神解惑