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

简说Qt信号和槽

目录

信号和槽是什么

Qt中的connect

使用信号和槽的前提

信号和槽关联的两种方式

自定义信号和自定义槽

​编辑

触发自定义信号 

disconnect 断开信号和槽的连接


信号和槽是什么

我们写的 GUI程序,就是为了让用户操作的,就是要和用户进行交互,这个过程中,就需要关注用户的具体操作是什么?

说到信号,信号源,信号类型,信号的处理方式,与Linux中的信号异曲同工之妙,

槽,本质上就是回调函数,比如C语言中的qsort函数,STL中的仿函数,lambda函数,信号处理函数,线程入口函数,epoll的基于回调的机制。

Qt中的connect

Qt中的connect和网络中的connect没有任何关系,Qt中的connect是用来实现信号和槽之前的多对多关系。

使用信号和槽的前提

如果某个类想要使用信号或者槽,就必须要在类的最开始引入Q_OBJECT这个宏。

信号和槽关联的两种方式

connect(哪个空间发出的信号,啥信号,谁处理这个信号,处理方式是什么);

ui界面右键控件,转到槽:

第二种方式,qmake生成的ui_weight.h中,有下面这个方法,他的作用是启用用名称连接信号和槽

QMetaObject::connectSlotsByName(Widget);

 

自定义信号和自定义槽

public slots:

public signals:

 

 自定义槽函数可以使用lambda函数。

触发自定义信号 

通过emit关键字手动触发信号

disconnect 断开信号和槽的连接

connect()两个可以让同一个信号被两个槽函数执行

http://www.xdnf.cn/news/8173.html

相关文章:

  • 雅思英语考试基本介绍
  • 案例分享——福建洋柄水库大桥智慧桥梁安全监测
  • 一文讲透:如何用AI生成时序图
  • 六:操作系统虚拟内存之帧分配
  • 鸿蒙Flutter实战:23-混合开发详解-3-源码模式引入
  • MaskGIT:掩码图像生成经典方法
  • Github超19k+ strar的实时协同编辑的开源框架yjs
  • 楼宇智能照明控制系统设计与实现(基于组态软件)
  • Ubuntu更新源服务器时出现:pk-client-error-quark
  • 抖音IP属地跟无线网有关吗?如何更改
  • 从LCD1602显示实验看嵌入式仿真教学平台如何革新高校实践教育
  • “人工智能+多学科”选题思路,2025热点AI+(180个)
  • Linux进程信号(五)之捕捉信号
  • 已将析构函数隐式定义为“已删除”错误
  • 场景化应用实战系列六:检索问答系统
  • VisionPro_几何学工具
  • 大模型讲师叶梓培训提纲《基于知识库的大模型应用》
  • Linux Systemd 管理java服务
  • Java微服务架构:Spring Cloud全栈指南,附最新Demo源码,可独立运行!
  • 新能源汽车核心元器件深度解析
  • 装备制造企业如何解决项目管理难题?
  • 应用案例 | 集成Docker,解锁 HMI/网关的定制化应用
  • LeetCode:贪心算法
  • MySQL三种备份方式介绍
  • 完全背包模板
  • sqlserver数据库查询执行慢的sql、查询隔离级别、设置快照模式、查询锁表进程、锁表sql、解锁等
  • 30.第二阶段x64游戏实战-认识网络数据包发送流程
  • 网络安全-等级保护(等保) 3-1 GB/T 28448-2019 《信息安全技术 网络安全等级保护测评要求》-2019-05-10发布【现行】
  • Mujoco 学习系列(四)官方模型仓库 mujoco_menagerie
  • 道可云人工智能每日资讯|谷歌搜索正式引入AI模式