当前位置: 首页 > news >正文

QT入门--信号和槽

为了使得按钮点击发挥作用

如点击按钮关闭窗口

按钮  ->  点击  ->  窗口  ->   关闭窗口

connect(信号的发出者,发出的具体信号,信号的接收者,信号的处理)

信号槽的优点:松散耦合,信号发送端和接收端本身没有关联的,通过connect关联在一起

connect(btn,&QPushButton::clicked,this,&QWidget::close);
自定义信号和槽

自定义槽函数,需要声明,也需要实现

自定义信号,返回值为void,只需要声明,不需要实现,可以有参数,可以重载。

自定义信号需要写到signal下,自定义槽函数写到public下即可

此时如果需要进行连接,我们需要指定地址来避免二义性

需要定义函数指针,并且声明作用域

将string转为char * 

name.toUtf_8().data();

 简略写法创建按钮

QPushButton* myt = new QPushButton("下课",this);

也可以用信号连接信号,这样前面第一个信号发出就会传递到最后一个接收者

断开信号连接

使用disconnect

note:

        一个信号可以连接多个槽函数

        多个信号可以连接一个槽函数

        信号和槽函数的参数必须一一匹配

        信号的参数要多余槽函数的参数,但是类型要一一对应

Lambda表达式

[](){}()

第一个内部:

        空:没有使用任何函数对象参数

        &:引用传递方式,可以使用Lambda所在局部范围内的所有局部变量

        =:值传递方式,可以使用Lambda所在局部范围内的所有局部变量

        变量:将变量以值传递方式传入

        &a:引用传递

第二个内部:重载参数

第三个内部:命令代码

第四个代表执行

mutable:可以修改值传递拷贝,放在一二之间

        

http://www.dtcms.com/a/34036.html

相关文章:

  • Spring 源码解读(二)——BeanDefinition
  • 基于 go-wrk 在 Windows 环境下对 Go Web 应用进行 HTTP 压力测试
  • 选与不选?从暴力枚举到背包dp
  • 第13篇:Vue Router基础使用
  • 旋转位置编码(ROPE)详解:从Transformer到现代前沿
  • 管道-过滤器、隐式调用、解释器架构风格对比
  • Spring——SpringSecurity开发经验实战
  • 给小米/红米手机root(工具基本为官方工具)——KernelSU篇
  • 【Python量化金融实战】-第1章:Python量化金融概述:1.1量化金融的定义与发展历程
  • QListView实现文件选择功能
  • JAVAEE一>Spring IoC和DI详解
  • 2024全国青少年信息素养大赛python复赛真题--装错信封
  • 【自学嵌入式(9)ESP8266网络服务器的使用】
  • spring中关于Bean的复习(IOC和DI)
  • 深度学习(5)-卷积神经网络
  • Qt 是一个跨平台的 C++ 应用程序框架
  • 如何了解和学习“未知的未知”
  • python安装教程,最新版本Python3.12安装教程(附安装包)
  • 计算机组成与接口5
  • 爬虫基础之爬取某基金网站+数据分析
  • 相机标定(张正友标定法)
  • 运放的输入失调电压和输入偏置电流
  • 机器学习数学通关指南——牛顿-莱布尼茨公式
  • Python 数据分析概述 ①
  • 操作系统知识点5
  • 玩转 Java 与 Python 交互,JEP 库来助力
  • 开源一个可以调RGB三色的小灯棒子
  • 驱动开发系列39 - Linux Graphics 3D 绘制流程(二)- 设置渲染管线
  • Docker内存芭蕾:优雅调整容器内存的极限艺术
  • 解决:Conda虚拟环境中未设置CUDA_HOME的问题