错误:
signals下的函数无法识别,类似于只声明没有定义。但是并不是这个原因。
原因:
我在创建类时通过自己添加QMainWindow父类,所以没有在类声明的顶部添加Q_OBJECT。
比如下图,添加之后就可以了。
#ifndef PLAYSCENE_H
#define PLAYSCENE_H
#include <QMainWindow>
class PlayScene : public QMainWindow
{
Q_OBJECT //需要添加这个
public:
PlayScene(int index); //有参构造,参数代表当前关卡号
int levelIndex; //成员属性 记录当前关卡
//绘图事件
void paintEvent(QPaintEvent *);
signals:
//点击返回按钮自定义信号
void chooseSceneBack();
};
#endif // PLAYSCENE_H
说明:
所有包含signals和slots的类必须包含Q_OBJECT在声明的顶部,而且必须继承自QObject(直接或者间接)
参考资料: