qt槽函数的四种写法

槽函数的四种写法

一,Qt4写法

不推荐这种写法 ,如果SLGNAL写错了,或者信号名字,槽函数名字写错了.编译器检查不出来,导致程序无响应,引起不必要的误解

cpp 复制代码
connect(ui.btnOpen,SLGNAL(clicked),this,SLOT(open()));

二,Qt5写法

推荐使用这种写法,信号名字、槽函数名字写错了,编译器会直接报错

cpp 复制代码
connect(ui.btnOpen,&QPushButton::clicked, this, &Widget::open);

三,lambda表达式写法

适用于slot代码比较少的逻辑

connect(ui.btnOpen,&QPushButton::clicked,[=](){
具体代码
});

四,牵线法

去掉头文件,cpp实现

不推荐这种写法,如果控件过多,并且界面跨很多层,基本无法处理

相关推荐
曼巴UE53 分钟前
UE5.3 C++ TArray系列(一)
开发语言·c++·ue5
熬夜苦读学习15 分钟前
Linux文件系统
linux·运维·服务器·开发语言·后端
菜鸟一枚在这22 分钟前
深度解析建造者模式:复杂对象构建的优雅之道
java·开发语言·算法
阿巴~阿巴~41 分钟前
多源 BFS 算法详解:从原理到实现,高效解决多源最短路问题
开发语言·数据结构·c++·算法·宽度优先
奔跑吧邓邓子2 小时前
【Python爬虫(34)】Python多进程编程:开启高效并行世界的钥匙
开发语言·爬虫·python·多进程
Heris992 小时前
2.22 c++练习【operator运算符重载、封装消息队列、封装信号灯集】
开发语言·c++
----云烟----2 小时前
C/C++ 中 volatile 关键字详解
c语言·开发语言·c++
yuanpan3 小时前
23种设计模式之《组合模式(Composite)》在c#中的应用及理解
开发语言·设计模式·c#·组合模式
BanLul3 小时前
进程与线程 (三)——线程间通信
c语言·开发语言·算法
十八朵郁金香3 小时前
【JavaScript】深入理解模块化
开发语言·javascript·ecmascript