PySide从实战开始学习系列(四)信号和槽的初步认识

本文介绍了PySide中的信号和槽机制,强调其特性,如信号的多重连接、异步同步连接等,并展示了如何使用connect()方法创建信号与槽的连接。通过例子解释了信号如何驱动UI更新,鼓励读者通过实践来掌握这一概念。
摘要由CSDN通过智能技术生成

信号和槽是Qt的特色,同样也是PySide的特点,信号和槽的特点:

一个信号可以连接多个槽
一个信号可以连接另一个信号
信号参与可以是任何python类型
一个槽可以监听多个信号
信号与槽的连接方式是同步连接,也可以是异步连接
信号与槽的连接可能会跨线程
信号可能会断开


信号有三个方法:

def connect (receiver)
def disconnect (receiver)
def emit (*args)

我们需要使用到connect(),通过官方的描述,

Signal.connect(receiver[, type=Qt.AutoConnection])
Create a connection between this signal and a receiver, the receiver can be a Python callable, a Slot or a Signal.

我们可以知道,connect方法传入一个接收函数,建立联系。我们利用之前的代码继续实现,在定义左侧QTreeWidget时加入下面代码:

# 点击显示信息的signal
self.tree.itemClicked.connect(self.itemClickedChange)
这样就添加了点击的信号,注意,itemClicked是QTreeWidget的信号函数,通过这个信号的connect连接到自定义的itemClickedChange方法(如下:)
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值