【发布时间】:2014-08-21 14:57:40
【问题描述】:
我正在从另一个类发送一个信号来更新 PySide QTableWidget,但什么都没有发生。我为这个演示做了一个非常简单的操作:
这是在名为Records.py的控制器模块中
class Records(QDialog, randomDialog.Ui_watchingDialog):
signal = 1
atSig = Signal(int)
def add_button_clicked(self):
# Do some stuff
self.signal = 1
self.atSig.emit(self.signal)
# Do some other Stuff
它位于名为main.py的控制器之外
from controller import Records
class main(QMainWindow, pyMainWindow.Ui_mainWindow):
def __init__(self, parent=None):
super(Main, self).__init__(parent)
self.setupUi(self)
signal_records = Records.Records()
signal_records.atSig.connect(self.showNewData)
def showNewData(self, signal):
if signal == 1:
print "It worked!"
else:
print "Problem"
这个信号怎么没有通过?没有抛出错误消息,也没有调用任何打印语句。我该如何解决这个问题?
【问题讨论】:
-
你确定'def add_button_clicked(self):'有电话吗?我使用我的 pyqt4,它工作正常。