かなり一般的な問題に違いないのですが、明らかな解決策が見つからないようです。
Python を配布する TFS ビルド スクリプトの一部として自動テストを含めようとしています。残念ながら、開発者の 1 人がこれをパッケージの _ _ init _ _.py の 1 つに入れました。
import Tkinter
import tkMessageBox
warningWindow = Tkinter.Tk()
warningWindow.withdraw()
tkMessageBox.showwarning("WARNING", "blah, blah, blah")
warningWindow.destroy()
これ自体は良いことですが、バッチで実行されている場合はそうではありません (すべてが一時停止します)。
私の最初の希望は、Tkinter にポップアップを無効にする構成設定があることでしたが、もしそうなら、私はそれを見つけることができません。
もう 1 つの方法は、tkMessageBox モジュールに「ハックイン」し、showwarning を何もしないものに置き換えることです。見たことあるけどやり方思い出せない…
どちらかよりも良い方法があることを願っていますか?