Object::connect: No such slot 问题解决办法

2019-10-11 11:45:57  阅读 5653 次 评论 0 条

起因:在一个纯C++类中想加入一个槽函数,于是继承QObject类,写上了Q_OBJECT声明

class A : QObject
{
    Q_OBJECT
public:
    A();

private slots:


    void onRefres();
};

但编译报错,Object::connect: No such slot,难道此类还没有成为QObject?


解决方法:新建类,基类选择QObject,自动生成的类如下

头文件

#ifndef AAAAA_H
#define AAAAA_H

#include <QObject>

class aaaaa : public QObject
{
    Q_OBJECT
public:
    explicit aaaaa(QObject *parent = nullptr);

signals:

public slots:
};

#endif // AAAAA_H

源文件

#include "aaaaa.h"

aaaaa::aaaaa(QObject *parent) : QObject(parent)
{

}

那么,照葫芦画瓢,想要使用信号槽,你的类像它一样就OK了

本文地址:http://bloguan.com/?id=552
版权声明:本文为原创文章,版权归 博观网 所有,欢迎分享本文,转载请保留出处!

发表评论


表情

还没有留言,还不快点抢沙发?