PyQt(Python+Qt)学习随笔:信号签名中的万能Python类型PyQt_PyObject

信号在定义时参数如果使用字符串‘PyQt_PyObject’表示参数可以是任何Python类型,这通常用于传递实际Python类型未知的对象,下面来举例说明:

  • 定义1个带2个未知Python类型参数的信号
sig2 = QtCore.pyqtSignal('PyQt_PyObject','PyQt_PyObject')
  • 定义槽函数
    def sigRecv(self, val1, val2):  # 接收信号的槽函数
            self.w_displayInf.append(f"Received signal:{val1},{val2}")
  • 建立信号和槽的连接
self.sig2.connect(self.sigRecv)
  • 发射信号
self.sig2.emit(self.count,self.sigInfo) #sigInfo为一个lineEdit的输入框对象
self.sig2.emit(self.count,self.sigInfo.text())

可以看到发射信号时,可以直接将输入框对象直接作为参数发送过去,也可以取得输入框的文本发送过去,对应的信号和槽都是同一个。

老猿Python,跟老猿学Python!

posted on 2019-12-27 00:35  老猿Python  阅读(282)  评论(0)    收藏  举报

编辑推荐:
· 记一次 .NET 某发证机系统 崩溃分析
· 微服务架构学习与思考:SOA架构与微服务架构对比分析
· tomcat为什么假死了
· 聊一聊 Linux 上对函数进行 hook 的两种方式
· C# 锁机制全景与高效实践:从 Monitor 到 .NET 9 全新 Lock
阅读排行:
· 一周 Star 破万的开源项目「GitHub 热点速览」
· 千万级大表,如何做性能调优?
· 不写代码,让 AI 生成手机 APP!保姆级教程
· 编码之道,道心破碎。
· 记一次 .NET 某发证机系统 崩溃分析
< 2025年6月 >
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 1 2 3 4 5
6 7 8 9 10 11 12

统计

点击右上角即可分享
微信分享提示