У меня есть два класса; один для моего окна и один для моего управляющего объекта
class window(baseClass, testForm):
scanStarted = QtCore.pyqtSignal(str)
def __init__(self,parent=None):
super(window, self).__init__(parent)
self.setupUi(self)
#other window setup
self._scanner.pushScan.clicked.connect(self._scanClicked)
def _scanClicked(self):
self.scanStarted.emit( self._scanner.getTextData() )
и мой управляющий объект
class vis(QtCore.QObject):
def __init__(self):
self._oreList = []
self._w = window()
self._w.scanStarted.connect(self._scanOre)
def _scanOre(self, rawText):
print "main ->", rawText
При использовании QtCore.QObject в качестве ссылки этот сигнал не будет подключаться к _scanOre. Когда я переключаю ссылку на «объект» python, он будет работать нормально. Я пытался понять, почему он не будет подключаться с использованием типа QtCore.QObject.
Сигнал также будет прекрасно подключаться в классе окна, независимо от того.
Я попытался дать _scanOre @QtCore.pyqtSlot(str, name='scanGo') и добавить параметр имени в создание сигнала. Я не уверен, что мне здесь не хватает.