PyQt组件间的通信方式

PyQt组件间的通信方式

  • PyQt组件间的通信方式
    • [1. 组件介绍](#1. 组件介绍)
      • [1.1 组件的定义](#1.1 组件的定义)
      • [1.2 组件的分类](#1.2 组件的分类)
    • [2. 组件的通信方式](#2. 组件的通信方式)
      • [2.1 信号与槽(Signal & Slot)](#2.1 信号与槽(Signal & Slot))

1. 组件介绍

在 Qt 框架中,‌组件‌(Component)是构建图形用户界面(GUI)的核心元素

1.1 组件的定义

Qt 组件(又称‌控件‌或‌部件‌)指用户界面中所有可视化的交互元素,例如按钮、文本框、标签、窗口等‌12。这些组件通过继承 QWidget 类实现,并具备统一的属性、方法和事件处理机制‌

1.2 组件的分类
  1. 内置组件
    • 基础交互组件‌:QPushButton(按钮)、QLineEdit(输入框)、QCheckBox(复选框)等‌。
    • ‌布局容器‌:QGroupBox(组合框)、QTabWidget(标签页)等‌。
    • 视图组件‌:QListView(列表视图)、QTreeView(树状视图)等‌

2. 组件的通信方式

  • 信号与槽:最常用,支持跨组件和线程,自定义信号。‌
  • 直接引用:适用于父子或已知结构的组件,通过.parent()或传递引用。‌
  • 参数传递:初始化时传入数据或回调函数。‌
  • 队列模块:线程间安全传递数据。
2.1 信号与槽(Signal & Slot)
  1. 组件内使用
python 复制代码
button.clicked.connect(label.setText) 
  1. 组件间通信
    自定义信号‌:通过定义 pyqtSignal 实现组件间自定义事件通信。
python 复制代码
class CustomWidget(QWidget):
    custom_signal = pyqtSignal(str)  # 定义信号
    def emit_data(self):
        self.custom_signal.emit("Data")  # 发射信号 
相关推荐
@fai6 小时前
PyQt6 Graphic进阶实战:打造一个视觉恒定的可缩放矩形框
python·pyqt
佳木逢钺4 天前
PyQt界面美化系统高级工具库:打造现代化桌面应用的完整指南
python·pyqt
李昊哲小课4 天前
PySide6 记事本应用开发教程
python·pyqt·pyside
李昊哲小课5 天前
第1章-PySide6 基础认知与环境配置
python·pyqt·pyside
no_work7 天前
通过人工智能技术识别鸟类品种pyqt界面和网页版本
pyqt
浩子智控10 天前
python程序打包的文件地址处理
开发语言·python·pyqt
Jia-Hui Su12 天前
Python类型标准(Type Hints)详解
开发语言·python·numpy·pyqt·ipython·python3.11
江畔柳前堤13 天前
XZ08_本地部署overleaf教程
人工智能·深度学习·eclipse·pyqt·信号处理
凌云拓界1 个月前
TypeWell全攻略(二):热力图渲染引擎,让键盘发光
前端·后端·python·计算机外设·交互·pyqt·数据可视化
凌云拓界1 个月前
TypeWell全攻略:AI健康教练+实时热力图开发实战 引言
前端·人工智能·后端·python·交互·pyqt·数据可视化