您尚未登录。

楼主 # 2021-08-11 09:09:23

tigger
Moderator
注册时间: 2021-06-18
已发帖子: 172
积分: 111

QT 一信号对应多个槽函数 (转)

网络上搜索,大部分都废话连篇,直接上码测试此功能,结果显示OK。

分别创建三个类,A,B,C。信号和槽绑定关系如下,一个信号绑定两个槽函数:

A::A(QObject *parent) : QObject(parent)
{
    B* b = new B();
    C* c = new C();
 
    connect(this, SIGNAL(Greet()), b, SLOT(Response()));
    connect(this, SIGNAL(Greet()), c, SLOT(Response()));
}
 
void A::SayHello()
{
    emit Greet();
}

两个槽函数:

void B::Response()
{
    qDebug()<<"B response";
}
void C::Response()
{
     qDebug()<<"C response";
}

主函数调用:

int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);
 
    A* ca = new A();
    ca->SayHello();
 
    return a.exec();
}

运行结果:

B response
C response

原文链接: https://blog.csdn.net/mz5111089/article/details/79383056

离线

页脚

工信部备案:粤ICP备20025096号 Powered by FluxBB

感谢为中文互联网持续输出优质内容的各位老铁们。 QQ: 516333132, 微信(wechat): whycan_cn (哇酷网/挖坑网/填坑网) service@whycan.cn