我想要实现的是当用户按下按钮时,我想显示最初隐藏的QLabel。然而,在那个按钮上我已经分配了一个重型扫描,这需要大约2-3分钟的驱动扫描。 QLabel仅在扫描完成后出现,如果点击按钮后如何显示,而不是在完成所有操作后显示。
代码
self.label_3.hide()
...
self.pushButton.clicked.connect(self._btn_cb)
...
def _btn_cb(self):
self.label_3.show() # here is the show code
for filename in find_files("C://images//", '*.png'): # took roughly 2-3 minutes
print filename
我是python的新手,谢谢你的帮助
答案 0 :(得分:1)
您只需要添加对
的调用QApplication.instance().processEvents()
在您的标签上致电.show()
之后。这将强制Qt处理队列中的事件(显示标签),然后再转移到其余代码。
确保在代码开头从QApplication
导入QtGui
。
from PyQt4.QtGui import QApplication