Qt信号与槽的使用方法

一. 在ui界面下创建信号与槽的链接
先创键一个新的项目,进入到ui界面下,添加一个按钮进来
在这里插入图片描述
这有两个选项右面是进行设置,左面是退出设置,也可以按快捷键F3F4
进入到编辑模式下之后我们点击一下按钮往下拖一下就会出来以下界面
在这里插入图片描述
然后我们把下面的选项勾上就能找到信号与槽了,这里我们选择按下按钮关闭窗口
在这里插入图片描述
选择ok,运行这个项目
在这里插入图片描述
点击一下这个按钮窗口就关闭了。
二. Ui界面下singal slot Edit方式链接
我们再次进入到ui界面下,然后添加一个按钮,然后下面有个加号,如图所示:
在这里插入图片描述
点击一下,出来这个
在这里插入图片描述
然后我们双击选择发送者,信号,接收者和槽,这里我们还是选择按钮按下 信号然后窗口关闭。
在这里插入图片描述
这次的运行结果和第一种相同。
三. QT4下的方法最常用的方法
这里我们再创建一个新的项目
在这里插入图片描述
写入以上数据,就可以实现按下按钮,关闭窗口。
我们也可以再SLOT里面写入自定义槽函数,我们写一个自定义槽函数myclicked(),还得在头文件中声明,因为我们定义的是槽函数所以我们要这样声明private slots: void myclicked();
在这里插入图片描述
我们在ui界面加了一个label,然后我们写connect
在这里插入图片描述
然后我们运行
在这里插入图片描述
点击按钮就改变了label里面的内容。
在这里插入图片描述
四. 自动关联
我们在ui界面下加入一个按钮点击右键,转到槽,然后就自己创建好了一个槽函数,其定义的名字我们不能进行改变,自动关联就说明其名字一点都不能变,变一点就找不到它。
在这里插入图片描述
运行项目,点击按钮就可以改变按钮的名字。
在这里插入图片描述
在这里插入图片描述
五. connect()函数基于函数指针的重载形式QT5下使用
这个和第三种方法差不多,只不过我们运用指针和取地址的方法进行链接
在这里插入图片描述
运行结果与第三种方法相同
六.手动提交 emit方式
需要在头文件中声明mySignal函数signal,
signals:
mySignal();
在这里插入图片描述
在这里插入图片描述
当点击按钮时,按钮的内容和label里的内容都会改变。
在这里插入图片描述
七. lambda c++11下使用
要使用lambda我们得在pro文件里加上CONFIG += c++11
在这里插入图片描述
具体可参考https://www.cnblogs.com/rainbow70626/p/10328143.html

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小加藤

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值