2009-11-11 107 views
1

我有幾個問題。幾個關於PyQt的問題

我有一個算法,將產生一對情侶在蟒蛇的圖片,必須在表中顯示的。我正在使用PyGt。我的問題是:我應該在哪裏運行我的代碼?從初始化程序?在這種情況下,從我測試的情況來看,表單不會顯示出來。

  • 我應該設立在 構造函數,開始我的算法 半秒鐘後,一個計時器?
  • 將運行算法凍結我 形式使其無法看到 圖片本身?我不介意的 按鈕,複選框等凍結而 它是計算,只要 當前畫面仍清晰可見。
  • 我應該使用類似C#的 OnFormLoad()?如果是的話,我該如何設置 呢?通過connect()?
  • 線程如何在python上工作? 我聽說過,但我不太確定 有關它,這是一個痛苦的交易 與。是嗎?在c#中,寫入4行就像 一樣簡單。我想如果可能的話用它 ,但如果它會是 很難實現它,我可以住 離不開它。

感謝

回答

4

你可能要檢查的Mandelbrot example。基本上這個想法是使用一個工作線程來完成大量的計算(我建議使用QThread來通過使用信號/插槽來簡化與主線程的通信),然後一旦工作完成後就發出一個信號計算出的數據並讓主線程畫出它。如果你喜歡,你也可以在工作者線程中渲染圖像。

1

結束時,您可以在一個單獨的線程中運行的算法,將數據放置到一個隊列中。主線程(GUI)將定期對隊列進行採樣並在數據到達時顯示數據。