当前位置: 首页 > 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:可以修改值传递拷贝,放在一二之间

        

相关文章:

  • 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
  • 爬虫基础之爬取某基金网站+数据分析
  • 郑州建站系统在线咨询/代做seo排名
  • 济南网站建设培训班/电商运营自学全套教程
  • 网站推广方法/全国新增确诊病例
  • 网站建设专题/搜索引擎优化包括哪些内容
  • 公司网站建设预算/nba最新新闻新浪
  • 软件开发公司专业的有哪些/seo是什么意思seo是什么职位