如何实时更新QTextEdit

时间:2014-10-27 04:18:15

标签: python pyqt qtextedit

我有一个带有QtextEdit的用户界面,
(1)我想更新QtextEdit,主UI可以实时显示而且没有卡住。使用睡眠时,不按我的意愿工作。 (2)我想制作一个函数并传递参数,QtestEdit可以实时更新显示

self.pButton_torun.clicked.connect(self.mytodo)

 def mytodo(self):
        self.progress_textEdit.append(u"==== 20 % first step finish")
        #after 2 sec
        self.progress_textEdit.append(u"==== 40 % second step finish")
        #after 2 sec
        self.progress_textEdit.append(u"==== 60 % third step finish")
        #after 2 sec
        self.progress_textEdit.append(u"==== 80 % forth step finish")

1 个答案:

答案 0 :(得分:7)

尝试使用processEvents()

def mytodo(self):
    self.progress_textEdit.append(u"==== 20 % first step finish")
    QApplication.processEvents()
    # etc...

这是一种解决方法,但在轨道上你可能还想考虑使用单独的线程。