2010-07-09 206 views
1

我有一個PyQt4應用程序,它在某些時候使用tarfile模塊打包一個大文件。由於tarfile模塊沒有實現任何回調策略,因此它會阻塞並且Qt GUI無法響應。在PyQt4中保持活動狀態

我希望GUI在那段時間內保持更新。唯一的可能性是一個單獨的線程。 所以,我開始一個QThread。在QThread中我必須做什麼來使GUI自行更新? 一旦tar程序完成,我希望線程完成。

謝謝! Nathan

回答

1

QThread的和普通的Python線程非常相似,所以你可以使用普通的通信方法。然而,QThreads也有一些可用的信號,所以如果你只是連接到那些,那麼你就完成了。

在你的GUI代碼做這樣的事,你就幾乎完成:

還有一個terminatedstarted信號可用,您可以使用:)

+0

謝謝,但我我想知道哪些函數需要gui來更新。 – Nathan 2010-07-11 14:16:09

+0

你在找什麼樣的GUI更新?你可以簡單地連接任何插槽的信號,它會工作:) – Wolph 2010-07-11 19:40:02

+0

我想gui重繪(如果它認爲這是必要的),並對用戶輸入作出反應 – Nathan 2010-07-13 14:50:21

相關問題