现在我正在使用Python来循环复制大量文件。在复制时,我告诉PyQt将反馈附加到QTextEdit:
for src in sources:
shutil.copy(src, dst)
self.feedback.append("Copying " + src)
(self.feedback
是QTextEdit)。
当我开始编写脚本时,PyQt将冻结,直到完成所有副本,然后立即显示所有内容。
如何在复制文件时实时显示每个反馈?
答案 0 :(得分:2)
由于您的任务完全是IO绑定的,因此您可以简单地告诉Qt在开始下一个复制操作之前处理任何挂起的gui事件:
for src in sources:
self.feedback.append('Copying: %s' % src)
QtGui.qApp.processEvents()
shutil.copy(src, dst)