PyQt5 pyqtSignal: 自定义信号传入的参数方法

PyQt5 pyqtSignal: 自定义信号传入的参数方法

在PyQt5当中,用户是可以自定义信号与槽函数的。这里想讲的是如何在pyqtSignal中传入任何的参数。

一般来说,我们会在pyqtSignal()中传入不同的参数,以便完成不同类之间的参数传递。

情况1:

# 这是一个不接受任何参数的signal
var1 = pyqtSignal()

情况2:

# 只接受传入的参数为int class
var2 = pyqtSignal(int)

# 只接受传入的参数为str class
var3 = pyqtSignal(str)

那么,如果要传入其他类型的参数呢?比如说想要传入一个np.array(),这时有两个选择(这只是我自己的方法):

  1. 找出该参数的type(),并将其放入pyqtSignal()当中;
  2. pyqtSignal()当中,输入object,如pyqtSignal(object),这样定义的话,该函数就可以接受任何类型的参数了。

参考链接:
StackOverflow: PyQt_PyObject equivalent when using new-style signals/slots?
Pyqt5 signals_slots官方文档

你可能感兴趣的:(PyQt5 pyqtSignal: 自定义信号传入的参数方法)