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

PyQt组件间的通信方式

PyQt组件间的通信方式

  • PyQt组件间的通信方式
    • 1. 组件介绍
      • 1.1 组件的定义
      • 1.2 组件的分类
    • 2. 组件的通信方式
      • 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. 组件内使用
button.clicked.connect(label.setText) 
  1. 组件间通信
    自定义信号‌:通过定义 pyqtSignal 实现组件间自定义事件通信。
class CustomWidget(QWidget):
    custom_signal = pyqtSignal(str)  # 定义信号
    def emit_data(self):
        self.custom_signal.emit("Data")  # 发射信号 


http://www.kler.cn/a/578637.html

相关文章:

  • 本地fake server,
  • macos查询pip默认镜像地址
  • Flask 框架简介
  • 软考初级程序员知识点汇总
  • 建筑兔零基础自学记录42|cityengine2019导入sketchup/SU 2
  • 在Rocky Linux上安装Redis(DNF和源码安装)
  • 每日一练之合并两个有序链表
  • 冒泡排序的算法实现
  • 基于PySide6的CATIA零件自动化着色工具开发实践
  • CGI程序刷新共享内存视频流到HTTP
  • redis有哪几种持久化方式
  • 【求Fibonacci(斐波那契)数列】
  • pycharm找不到conda可执行文件
  • k8s的配置文件说明
  • 二进制,十六进制,十进制
  • OpenFeign:优雅实现微服务远程调用
  • 【Linux网络】NAT技术、DNS系统、五种IO模型
  • UE5 AssetManager类使用详解
  • 基于大模型之力,重构 AI 数字化销售版图
  • WOA-Transformer鲸鱼算法优化编码器时间序列预测(Matlab实现)