我正在学习用pyqt4和python编程。我正在尝试编写一个简单的应用程序,它将在QLCD小部件中显示当前的CPU使用情况对于CPU使用率,我使用的是psutils模块。
问题是CPU使用率并不是一直更新的——它只记录应用程序启动时的CPU使用率(我猜),然后它就停止了。所以,我正在寻找某种循环等价物,希望它不会占用太多的CPU能量来处理。
这就是我目前所拥有的:
self.wpCpuUsage.display(cpu_percent(interval=1))
这在qmainwindow类的init中。
我试过把它放在for循环中,但它会遍历它,基本上是等待它遍历然后执行程序。
帮忙?
最佳答案
您可以将QTimer
对象与回调一起使用。
类似的事情应该管用:
def call_this():
self.wpCpuUsage.display(cpu_percent(interval=1))
self.my_timer = QtCore.QTimer()
self.my_timer.timeout.connect(call_this)
self.my_timer.start(1000) #1 second interval