在 PyQt 中,信号与槽是实现事件驱动的一种重要机制。通过信号与槽的连接,可以实现对象之间的通信,例如在用户界面中响应按钮点击事件或者数据的变化等。PyQt 提供了两种主要的方法来创建信号与槽的连接:@pyqtSlot 装饰器和 connect 方法。本文将详细介绍这两种方法,并提供相应的源代码示例。
- @pyqtSlot 装饰器
@pyqtSlot 装饰器是 PyQt 提供的一种简便的方式,用于将一个普通的 Python 方法转换为槽函数,并与信号进行连接。使用 @pyqtSlot 装饰器可以省略 connect 方法的调用,使代码更加简洁明了。下面是一个示例:
from PyQt5.QtCore import QObject, pyqtSignal, pyqtSlot
class MyObject(QObject):
my_signal = pyqtSignal(