如果我試圖創建一個窗口或在IDLE shell中提示文件對話框,則不會打開任何內容並重新啓動外殼。這是一種錯誤嗎?我找不到任何關於它的事情。我是PyQt(通常是Python)的新手,但已經能夠讓教程正常工作。最後一天左右,如果我打開IDLE並導入PyQt4,QtGui等,然後運行諸如QFileDialog.getOpenFileName之類的簡單東西,那麼shell就會重新啓動。有任何想法嗎?PyQt重新啓動外殼
1
A
回答
1
你需要有一個QApplication
,然後才能使用PyQt的其他任何東西。嘗試重新閱讀你所遵循的一些教程,或者再做一些。例如This one。
在上面的教程的第一個代碼示例,要特別注意這些行(我已經包括從教程爲方便起見,評論):
app = QtGui.QApplication(sys.argv)
每個PyQt4的應用程序必須創建一個應用程序目的。 應用程序對象位於QtGui模塊中。 sys.argv 參數是來自命令行的參數列表。 Python腳本 可以從shell運行。這是一種方法,我們如何控制腳本的啓動 。
和
sys.exit(app.exec_())
最後,我們進入應用程序的主循環。事件處理 從這一點開始。主循環接收來自窗口 系統的事件,並將它們分派給應用程序小部件。主循環 結束,如果我們調用exit()方法或主小部件被銷燬。 sys.exit()方法確保乾淨退出。環境將通知 ,應用程序如何結束。
exec_()方法有一個下劃線。這是因爲該exec是一個 Python關鍵字。因此,使用exec_()代替。
看來你可能已經忘記了這些。或者,您可能還沒有意識到這意味着您通常不能在交互式shell中使用帶有運行事件循環的PyQt。但是,有一個技巧,請參閱here。
相關問題
- 1. 重新啓動Sharepoint管理外殼
- 2. 如何從灰殼重新啓動?
- 3. Python的外殼重新啓動在執行主窗口= QtGui.QMainWindow()
- 4. Neo4j外殼沒有啓動
- 5. PyQt Qthread自動重啓
- 6. 無法啓動火花外殼
- 7. 內嵌程序集啓動外殼
- 8. IPython的外殼不會啓動
- 9. 自動重啓/恢復在Windows XP中的自定義外殼
- 10. 重新啓動後重新啓動
- 11. 如何跟蹤殼外殼的處理啓動?
- 12. SWT重繪外殼
- 13. 從外殼啓動時在shell中啓動Emacs
- 14. 啓動CoreBluetooth從外設重新連接
- 15. C#.Net變量意外重新啓動
- 16. Grails - 外部化配置重新啓動
- 17. 殼牌重新啓動,而不是運行代碼
- 18. Windows外殼 - 防止加載或動態重新加載
- 19. 重新啓動後重新連接外圍設備 - Objective-C
- 20. 重新啓動/重放Java遊戲而不重新啓動GUI
- 21. 重命名文件外殼
- 22. 活動重新啓動但計時器未重新啓動
- 23. 如何在不重新啓動的情況下更新Windows資源管理器的外殼擴展
- 24. 重新啓動CountDownTimer
- 25. 重新啓動Chromecast
- 26. 重新啓動Sidekiq
- 27. 重新啓動Ngnix
- 28. 在重新啓動
- 29. 重新啓動HTA?
- 30. 重新啓動ReduceByKeyAndWindows
恩......我不覺得傻。非常感謝你! –