qt-信号与槽初步

接下来,我们将沿着上一篇的进度,学习如何将按钮与退出程序建立连接。

建立连接是什么意思呢,我们就拿按钮来解释一下。按钮可以被按下。显然当按钮按下的时候,我们希望程序做出指定反应。但是我们需要指定谁来接受这个信号并做出反应,否则发出信号程序并不一定有什么反应。建立连接就是用来做这种事情的。

所以,本文中,我们需要设计一个程序,这个程序有一个quit按钮,按下它,程序就会退出。

先放代码:

#include <QApplication>
#include <qpushbutton.h>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);

    QPushButton quit("quit",0);
    quit.resize(120,60);

    QObject::connect(&quit,SIGNAL(clicked()),&a,SLOT(quit()));

    quit.show();

    return a.exec();
}

与上一篇文章相比,这次的代码主要只增加了QObject::connect一个函数,这个函数就是用来将按钮与退出程序建立连接的。可以看到该函数中有quit对象,SIGNAL,a对象,SIGNAL。所以该函数的作用就是将A对象(quit按钮)的某个信号(按下)和B对象(a)的某个行为(退出程序)进行连接。

qt中信号仍称信号,但对信号做出反应的行为,称槽。具体可以自行查看qt官方文档中信号和槽的部分。

posted @   bvwvd  阅读(21)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示