我有一个进步,我在PyQt4中使用QProgessDialog“模仿”。基本上,我有一个这样的循环:
while progressThread.isRunning():
self.progressDialog.setRange(0, self.progressTotal_)
self.progressDialog.setValue(self.progress_)
del self.progressDialog
progressThread upade变量self.progessTotal_和self.progress _
当progress_的值不断变化时,这非常有效。 但是对于某些任务,情况并非如此(因为进度报告不是那么详细)。
结果是,progressDialog显示灰色窗口,直到某些内容发生变化。我可以在while循环中插入一些内容,这会强制progressDialog更新也没有任何变化吗?
谢谢! 森
答案 0 :(得分:0)
您应该将线程的更新信号连接到进度对话框。你用循环阻止了UI线程。你可以在循环中添加一个QApplication :: processEvents调用,但是不要阻止UI线程,你会没事的。