我正在尝试更新QLCDNumber的值。我想做的是在一个单独的线程中运行一个函数,该线程输出一个值(在本例中只是向上计数),并将该值显示在屏幕上。在
下面是我使用的python脚本,下面是.ui文件的内容(其中QLCDNumber命名为“disp”):import sys
import threading
from PyQt4.QtCore import *
from PyQt4.QtGui import *
from PyQt4 import uic
from time import sleep
Ui_MainWindow, QtBaseClass = uic.loadUiType("./disp.ui")
class MainWindow(QMainWindow, Ui_MainWindow):
counter = pyqtSignal(int)
counting = False
def __init__(self):
QMainWindow.__init__(self)
Ui_MainWindow.__init__(self)
self.setupUi(self)
self.disp.display(?????) #
def startCounting(self):
if not self.counting:
self.counting = True
thread = threading.Thread(target=self.something)
thread.start()
def something(self):
for i in range(100):
self.counter.emit(int(i))
sleep(0.5)
self.counting = False
if __name__ == "__main__":
app = QApplication(sys.argv)
window = MainWindow()
window.show()
sys.exit(app.exec_())
.ui文件:
^{pr2}$