在Windows中爲Python腳本生成錯誤窗口最簡單的方法是什麼? 特定於Windows的答案很好;請不要回復如何生成自定義Tk窗口。如何在Windows中在Python中拋出錯誤窗口
回答
@Constantin幾乎是正確的,但他的例子會產生垃圾文本。確保文本是unicode。即,
ctypes.windll.user32.MessageBoxW(0, u"Error", u"Error", 0)
...它會正常工作。
我會記住這一點。 – 2010-07-29 18:26:50
幾乎正確:)在3.x'ctypes.windll.user32.MessageBoxW(0,「Error」,「Error」,0)''會按預期工作,'u'Error''根本不會編譯。 – Constantin 2010-07-29 18:32:56
啊,很高興知道。當我被迫遷移到py3k時,這將會是一個令人頭痛的問題! – Chris 2010-07-29 18:34:41
如果你需要一個GUI錯誤信息,您可以使用EasyGui:
>>> import easygui as e
>>> e.msgbox("An error has occured! :(", "Error")
否則簡單print("Error!")
應該足夠了。
這工作,謝謝!不過,我不得不安裝另一個庫。它基於Tkinter。我想直接調用windows API。 – 2010-07-29 18:25:24
如果我沒有記錯的(沒有在目前的Windows箱),方法是:
import ctypes
ctypes.windll.user32.MessageBoxW(None, u"Error", u"Error", 0)
ctypes是一個標準模塊。
注意:對於Python 3.x,您不需要u
前綴。
您可以使用tkinter獲得一行代碼。
import tkMessageBox
tkMessageBox.showerror('error title', 'error message')
這是pop-up dialogs的一些文檔。
啊,我不知道,謝謝! 我更喜歡直接win32調用,雖然 – 2010-07-29 18:40:19
請注意,有了這個答案,你也會得到一個主窗口。有關詳細信息,請參閱[此答案](http://stackoverflow.com/questions/17280637/tkinter-messagebox-without-window)。 – Brown 2017-04-05 14:11:34
退房的信息對消息boxs Python的維基的GUI部分
- 1. 窗口。的ShowDialog()拋出錯誤
- 2. 如何在庫中拋出錯誤
- 3. 如何拋出錯誤並退出python
- 4. Python腳本在PyCharm中工作,但在Windows cmd中拋出路徑錯誤
- 5. JavaScript:父窗口拋出的異常發生在子窗口中
- 6. 如何在彈出窗口中顯示錯誤消息jquery
- 7. Webpack-dev-server在Windows上拋出錯誤
- 8. windows服務拋出錯誤
- 9. Python,tkinter彈出窗口錯誤
- 10. python硒錯誤日誌彈出窗口
- 11. Python中的OpenCV2拋出inRange錯誤
- 12. 如何在彈出窗口中打開彈出窗口?
- 13. 如何在Windows中隱藏Cygwin Python控制檯窗口?
- 14. 在Python中顯示彈出窗口(PyQt4)
- 15. 窗口中的Python XVFB錯誤
- 16. sql中的「AS」語法在python中拋出錯誤
- 17. 如何在Python中「刷新」Tkinter窗口?
- 18. 如何處理髮生在子窗口中的父窗口中的JavaScript錯誤?
- 19. 在python中使用彈出窗口獲取索引超出範圍錯誤
- 20. python ctypes拋出錯誤?
- 21. python shutil.rmtree拋出錯誤
- 22. 如何在關閉時拋出錯誤?
- 23. 如何在Windows CE 6中禁用系統彈出窗口?
- 24. FileUpload在Java-Windows中拋出錯誤的方法
- 25. 覆蓋DLL在Windows 7中拋出拒絕訪問/錯誤5
- 26. 在Windows 7上的彈出窗口位置錯誤,在Windows 8上正確
- 27. 避免在輸出窗口中出現綁定錯誤
- 28. Python中的摺疊窗口不斷出現在根窗口下
- 29. 如何在回調中彈出窗口
- 30. 如何在同一窗口中彈出?
這有什麼錯Tk的?使用tkinter創建消息框非常簡單。 – 2010-07-29 18:14:44
我正在尋找一個班輪 – 2010-07-29 18:23:00