第四章 、PyQt中的信号(signal)和槽(slot)机制以及Designer中的使用
2024-10-22 04:23:49
一、引言
前面章节其实已经在使用信号和槽了,但是作为Qt中最重要的机制也是Qt区别与其他开发平台的重要核心特性,在此。
二、信号和槽的概念
2.1、概述
信号和槽是Qt特有的信息传输机制,是Qt设计程序的重要基础,它可以让互不干扰的对象建立一种联系。
信号和槽用于对象间的通信,在一个图形界面程序中,当一个部件中发生变化时,通常需要通知其他对象,在Qt中当采用特定事件发生时会发射(注意此处用的是发射(emit)而不是发送,老猿估计是因为这里的信号不是一对一发送的,而是可以一对多发射)一个信号来通知需要通知的对象,需要关注的对象就会调用信号连接的槽函数执行响应操作。
从QObject或其子类(如QWidget)继承的所有类都可以包含信号和插槽。
2.2、信号(signal)
当对象以其他对象可能感兴趣的方式改变其状态时,它们会发出信号。
Qt中的信号本质上是一个公有函数(即方法),信号只需声明,不能对其进行定义,声明函数时不能有返回值。由于信号是某个对象的公有方法,信号可以从任何地方通过emit语句发出,与直接调用信号对应函数类似,只是在函数调用语句前多了个emit。
发射信号的语句:emit 信号函数(信号参数)
Qt建议只从定义信号的类及其子类的类发出信号,Qt
最新文章
- 理解python可变类型vs不可变类型,深拷贝vs浅拷贝
- 【BZOJ】【2588】COT(Count On a Tree)
- mac 上的版本控制工具SmartSVN9.0.4(破解版)
- [Objective-c 基础 - 2.2] OC弱语法、类方法
- Repeater控件实现数据绑定,并实现分页效果
- Python开发工具Wing IDE发布5.0.1版本
- fido-uaf-protocol-v1.0
- Android 调试工具集【转】
- access的保留关键字
- Unity预计算光照的学习(速度优化,LightProb,LPPV)
- [poj2923]Relocation_状压dp_01背包
- ASP.NET Core + Docker +Jenkins 实现持续集成
- jquery 遍历 json【转】
- Winform开发框架之简易工作流设计(转自 伍华聪博客)
- 软件工程 wc.exe 代码统计作业
- python 集合总结
- banwagon vps装wordpress
- 具有全球唯一性,相对于internet,IP为逻辑地址
- Vue2.0 + ElementUI的+ PageHelper实现的表格分页
- 程序设计中的dry原则
热门文章
- C++ 基础 5:多态
- 使用python和numpy实现函数的拟合
- shell编程之算术扩展(引号、命令替换、算术扩展)
- python 之路 面向对象
- MySQL 连接为什么挂死了?
- Linux中Python自动输入sudo 密码
- phpmyadmin 4.8.1任意文件包含(CVE-2018-12613)
- 通过RayFire为图形添加二次破碎效果
- MathType中如何编辑求和公式
- jQuery 第九章 工具方法之插件扩展 $.extend() 和 $.fn.extend()