不支持C ++类型槽参数

时间:2012-03-24 16:06:30

标签: python qt4 pyqt4

我正在尝试发出一个信号并发送两个参数,一个是Song个对象的列表,第二个是QtGui.QTableView个对象。

我试过这样做:

self.emit(QtCore.SIGNAL("searchOutput(list, QtGui.QTableView)"), songsObjs, self.table)

但是我收到以下错误:

TypeError: C++ type 'list' is not supported as a slot argument type

我该怎么办?

1 个答案:

答案 0 :(得分:6)

如果你看一下reference,那就说

  

通过将PyQt_PyObject指定为签名中的参数类型,可以将任何Python对象作为信号参数传递。

  

虽然这通常用于将列表和字典之类的对象作为信号参数传递,但它可以用于任何Python类型。

所以请尝试这样做:

self.emit(QtCore.SIGNAL("searchOutput(PyQt_PyObject, QtGui.QTableView)"), songsObjs, self.table)