信号与槽应该从抽象层面进行本质上的理解,就是当满足某个条件(信号),则执行某项操作(槽). 举一个简单的例子,solider值变化,则引起lcd的变化,当你点击鼠标,则执行某个操作,都是在发送信号,执行任务。
如何创建信号
fromPyQt5.QtCoreimportpyqtSignalclassA():#创建了一个my_signal信号my_signal = pyqtSignal(int)
一个信号引起另一个信号
button.clicked.connect(my_signal.emit)
如何发送信号
#value 就是参数value = 5my_signal.emit(value)
如何连接connect信号和槽
def hi(value):
print("hello world")
a = A()
a.my_signal.connect(hi)
如何取消connect
#指定解除槽hi的联系,如果不指定,则disconnect所有槽a.my_signal.disconnect(hi)
网友评论