Python PyQt4每1分钟更新一次小部件上的数据

时间:2014-03-23 10:58:27

标签: python python-2.7 pyqt4

我有一个PyQT4应用程序,它从本地sqlite3数据库读取信息并使用QTableWidget显示数据。

sqlite3上存储的数据会不时发生变化。所以,我想每1分钟更新一次Table Widget。

为了简化问题,我们假设我已经拥有一个名为' 刷新()'的功能。这将刷新我的表格小部件中的内容。

如何使此功能' 刷新()' 每1分钟执行一次?我使用Tkintertime.after()中完成了此操作。我不知道如何在PyQt中执行此操作。

1 个答案:

答案 0 :(得分:5)

您的功能应该被称为 paintEvent 。然后像这样制作一个QTimer

self.timer = QtCore.QTimer()
self.timer.timeout.connect(self.update)
self.timer.start(60000) #trigger every minute.

除非你因为某些原因需要更新支持而不是前端的东西(换句话说,函数用于绘图。否则它应该毫无疑问地被调用的paintEvent )。然后做:

self.timer.timeout.connect(self.Refresh)