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实现

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

相关推荐
用户805533698032 天前
不止三件套:QObject 属性系统全关键字与运行时反射!
c++·qt
xcyxiner2 天前
DicomViewer (vcpkg Windows和ubuntu编译)7
qt
Quz7 天前
QML Hello World 入门示例
qt
xcyxiner10 天前
DicomViewer (dcmtk读取dcm文件)5
qt
xcyxiner10 天前
DicomViewer (后台线程处理文件)4
qt
xcyxiner11 天前
DicomViewer (添加模型类)3
qt
xcyxiner11 天前
DicomViewer (目录调整) 2
qt
xcyxiner11 天前
dcmtk vtk vtk-dicom(gdcm) 编译(debug) v2
qt
LDR00613 天前
Type-C 快充全面升级!LDR6601 赋能个人护理便携电机,重塑剃须刀 / 理发器新体验
c语言·开发语言
雪碧聊技术13 天前
Tree.js是什么?一文讲透
开发语言·javascript·ecmascript