1

我正在研究一个 pyqt-gui,它应该有可能在每个选定的时间(例如每 2 分钟)刷新数据加载。在这个循环中,gui 应该能够响应事件等。

代码如下所示:

from PyQt4.QtCore import *
from PyQt4.QtGui import *
from PyQt4.uic import *
class TeleModul (QMainWindow):
    def __init__(self, *args):
        QWidget.__init__(self, *args)
        loadUi ("telemodul.ui",self)
        .....
    def on_ButtonSuchen_clicked (self):
        QTimer.singleShot(60000, self.RefreshData())
    def RefreshData(self):
        ...do something ...

单击 ButtonSuchen 会引发错误:

TypeError:参数与任何重载调用不匹配:
QTimer.singleShot(int, QObject, SLOT()):参数 2 具有意外类型“NoneType” QTimer.singleShot(int, callable):参数 2 具有意外类型“NoneType”

什么是错误或集成此循环的最佳方法是什么?

4

1 回答 1

4

传递可调用对象,而不是调用它的结果:

QTimer.singleShot(60000, self.RefreshData)
于 2013-01-02T11:03:25.637 回答