遇到问题:在QT4.8中,出bug的代码如下,(相关的cpp文件的内容就不写了,问题不在cpp文件中)
//在父类的头文件中,继承了QWidget
class ParentsClass: public QWidget
{
Q_OBJECT
public: //这里我随便在父类建立两个按钮
ParentsClass(QWidget *parent = 0);
QPushButton *minButton;
QPushButton *closeButton;
public slots: //槽函数
void minButtonClick();
void closeButtonClick();
}
//在子类的头文件中,继承了父类ParentsClass
class Subclass:public
{
public:
Subclass();
QPushButton *TestButton;
public slots:
void TestButtonClick();
}
bug报错:父类中没有 TestButtonClick() 这个槽函数函数
解决方法:
步骤1、在工程的pro文件中加上下下面两句
OBJECTS_DIR = tmp
MOC_DIR = tmp
步骤2、在子类类的定义中加上Q_OBJECT,添加位置可参考上面实例代码中父类写Q_OBJECT的位置。
步骤3、(先编译一下,看一下会不会报错,不会报错就不用加上这一步骤)删除工程文件夹中的.Debug文件和.Release文件然后重新编译。可见下图所示。