定义一个信号源有4个方面要注意:
1.定义信号源
A = pyqtSignal([str], [int,str])
这里特别使用信号源重载的情况加以说明。如上就是信号源A的重载,一个可以发送str参数,另一个可以发送(int,str)参数。注意这相当于声明了两个同名但参数不同的信号源。
2.链接“槽”,
A[int,str].connect(func)
对于重载的信号源,A之后的[int,str]是必须的,一旦忽略默认为信号源定义时匹配第一个参数的信号源,在本例中就是参数为[str]的A信号源。对于非重载的信号源可以有也可以没有,只是必须与定义信号源时的参数一致。
3.信号发送emit
A[int,str].emit(1,'eee')
注意这里的[int,str]是必须的,一旦忽略默认为信号源定义时匹配第一个参数的信号源,在本例中就是参数为[str]的A信号源。
4.函数即‘槽’的编写
def func(arg1,arg2):
注意func的参数只能少于信号源发送的参数,不能多余。