向 pyqtSignal 发射未知数量的参数

Emitting unknown number of args to pyqtSignal

我想向 pyqtSignal 发出未知数量的参数

例如将未知参数传递给 def 时:-

def oPrint(*args):
    print(args)

我想对 pyqtSignal 做同样的事情。即:-

class UI(QMainWindow):
    msgSig = pyqtSignal(*object) #this gives error

TL;博士; Qt 需要知道参数的数量,所以你的要求不能满足。


解决方法是使用一些容器作为列表或元组。

class UI(QMainWindow):
    msgSig = pyqtSignal(list)
ui = Ui()
l = [1, "2", 3, "4"]
ui.msgSig.emit(l)
def oPrint(args):
    print(args)