如何解决如何使用 QTimer 每秒多次刷新我的 QWidget?
我想构建一个显示信息的 GUI,每 10-100 毫秒更新一次。我试图通过设置 Qtimer.start(100) 将其实现到 QTimer 示例中,但它每秒只更新一次。如何实现每秒刷新一次以上的 GUI?我也试过手动 QWidget.update() 和 QTimer.setInterval(100) 没有效果。有没有更好的解决办法?
import sys
from python_qt_binding.QtWidgets import QWidget,QPushButton,QApplication,QListWidget,QGridLayout,QLabel
from python_qt_binding.QtCore import Qt,QTimer,QDateTime
class RobolabWidget(QWidget):
def __init__(self,parent=None):
super(RobolabWidget,self).__init__(parent)
self.setWindowTitle('QTimer example')
self.listFile=QListWidget()
self.label=QLabel('Label')
self.startBtn=QPushButton('Start')
self.endBtn=QPushButton('Stop')
layout=QGridLayout()
self.timer=QTimer()
self.timer.setTimerType(Qt.PreciseTimer)
self.timer.timeout.connect(self.showTime)
layout.addWidget(self.label,1,2)
self.timer.start(100)
self.setLayout(layout)
def showTime(self):
time=QDateTime.currentDateTime()
timeDisplay=time.toString('hh:mm:ss:ms')
self.label.setText(timeDisplay)
解决方法
我发现了问题。 QDateTime.currentDateTime() 只有秒的分辨率。
我只使用对我有用的 python-datetime 函数而不是 QDateTime。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。