【python】pyqt6信号与槽的代码与designer设置方法

pyqt6信号与槽的作用

整体过程

对象(控件)接收到一个信号(类似clicked这样的函数),就会对接受者(自身或者其他控件)发出一个我被点击了的信息,然后这个接受者就会执行槽(函数方法)。

信号

简单理解就是监控方法,当对象得知执行了这个方法(信号)后就会传递给接收者信息

简单理解就是执行的方法,当接受信号后就会执行这个方法

值得注意的是,这个槽可以是控件的方法,也可以是我们自己写的方法

代码中配置信号与槽

面向过程中的信号与槽

代码

【python】pyqt6信号与槽的代码与designer设置方法_第1张图片

重点代码:

button.clicked.connect(lambda :pnt())

这串代码是槽函数的代码

当按钮被点击时就会执行pnt函数,而pnt会打印槽函数被执行

结果

【python】pyqt6信号与槽的代码与designer设置方法_第2张图片

重点注意事项

这里用lambda表达式正常执行,不能直接把函数写上。

或者是把函数写上,但是不加上括号,只写函数名。

面向对象的信号与槽

代码

【python】pyqt6信号与槽的代码与designer设置方法_第3张图片

执行结果

【python】pyqt6信号与槽的代码与designer设置方法_第4张图片

 注意事项

1.面向对象中不能在类中使用sys这些模块的东西,没有继承那些类,所以要写到外面

2.绑定槽直接self.方法名就可以了

designer中配置信号与槽

点击这个按钮

之后进入配置信号与槽的状态。

 鼠标拖动连接两个控件

【python】pyqt6信号与槽的代码与designer设置方法_第5张图片

 配置信号与槽

【python】pyqt6信号与槽的代码与designer设置方法_第6张图片

配置成功

【python】pyqt6信号与槽的代码与designer设置方法_第7张图片

这样的话,按钮接收到点击的信号,就会发给文本执行清除文本的槽函数。

【python】pyqt6信号与槽的代码与designer设置方法_第8张图片【python】pyqt6信号与槽的代码与designer设置方法_第9张图片

信号对多槽,多信号对一槽

这里信号与槽并不是一一对应的关系,可以一对多。

可以实现一个按钮对应多个槽函数

【python】pyqt6信号与槽的代码与designer设置方法_第10张图片

按下按钮,直接全部清空。

你可能感兴趣的:(Python笔记,python,pyqt)