PyQt5信号与槽的简单使用记录

PyQt5信号与槽的简单使用


前言

最近开发项目,使用PyQt5学习了一些知识,简单记录一下!


信号与槽

使用Qt设计好界面,再通过PyUic转化成py,就可以通过其他python来调用设计好的界面控件。在调用界面控件时,我们使用到信号与槽。

举个例子:
我前端设计采用了一个按钮。
按钮有对应的Click事件,那这个点击事件要如何和后台沟通。那么就需要连接。这个连接的方式有好几种。我简单介绍一下:
定义Click事件,也就是对应的函数;

def btn_click(self):
	pass

然后使用connect连接起来。

self._ui.xx.clicked.connect(self.btn_click)

_ui是我们设计的界面,我们可以命名为_ui使用。
xx就是这个界面里的控件。
clicked可以是这个控件对应的事件。
通过以上的方式,我们就完成了一个简单的信号与槽的绑定。
于是乎,可能就会出现一个按钮对应一个槽函数。我们的多个按钮,相当于多个信号,使用同一个槽函数。
我们可以做出如下更改:

self._ui.xx.clicked.connect(lambda:self.btn_click(yy))

我们在这里区分不同的信号,就是在给它增加一个区分,添加一个变量,这个变量根据我按钮的不同来变化。

def btn_click(self,yy):
	pass

这里的yy就可以知道是什么按钮按下的,来进行不同的操作,这样我们避免出现定义重复的函数,尤其当很多按钮按下的事件处理相同,仅有一个数据不同时,这种方式可以减少很多的代码量,优化了代码!


总结

本文记录了在使用connect信号与槽的两种方式。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值