可能性の重複:WindowsでwxPythonのプログラムを実行するときに標準出力として表示されますコンソールを取り除くためにどのように
How can I hide the console window in a PyQt app running on Windows?は、Windows
?
可能性の重複:WindowsでwxPythonのプログラムを実行するときに標準出力として表示されますコンソールを取り除くためにどのように
How can I hide the console window in a PyQt app running on Windows?は、Windows
?
すでに、pyからpywへの名前の変更を提案している人もいます。 出力リダイレクションを参照する場合は、wx.Appクラスを作成するときにredirect = Trueを渡します。例えば
参照http://www.wxpython.org/docs/api/wx.App-class.html
__init__
の署名は、あなたがなし異なるredirect=True
とファイル名を設定した場合、sys.stdout
とsys.stderr
がファイル名にリダイレクトされます
__init__(self, redirect=False, filename=None, useBestVisual=False, clearSigInt=True)
です。 WindowsとMacではリダイレクトのデフォルト値はTrueであることに注意してください。 redirect==True and filename is None
の場合、出力は他のフレームとは異なるポップアップウィンドウに印刷されます。 これは非常に便利なので、デバッグ中にリリースモードでアプリの内部とユーザーインターフェイスを混乱させずに、何が起こっているのかを追うことができます。
GUIを使ってPythonアプリケーションを実行しているときに、出力リダイレクションがコンソールウィンドウが開いていることにどのように関係しているのかよくわかりません。あなたは説明できますか? –
私はwxPythonについてはわかりませんが、python.exe
の代わりにpythonw.exe
を使用して簡単に解決策を実行できます。
と同様に、あなたのファイルをクリックすると、python.exeの代わりにpythonw.exeが起動されるように、whatever.pywの代わりにwhatever.pywに名前を変更します。 – Moe
wxPythonに精通していませんが、python.exeではなくpythonw.exeでスクリプトを呼び出すと、コンソールウィンドウが表示されません。スクリプトをscript.pywとして保存することもできます。
.pywファイルであり、あなたのPythonが関連付けられている場合ウィンドウではファイルをダブルクリックするだけでコンソールなしで起動します –
モジュール内にすべてのGUIコードがあり、拡張子PYのメインスクリプトがあります。すべてのファイルの名前をPYWに変更する必要がありますか? __init__.pyファイルでさえ? –
いいえ「メイン」スクリプトだけです。 – AlexJReid
これを行う最も簡単な方法は:
if __name__ == "__main__":
app = wx.App(0) #<--- or False
frame = MyFrame('My Frame')
frame.Show(True)
app.MainLoop()
これはwxPythonのウィンドウの代わりにstdoutに出力します。
これは、アプリが読み込まれているときにエラーが発生したときに画面上でwxWindowが点滅して消えてしまい、エラーを読み取ることができなくなったために便利です。 0を追加すると、エラーがコンソールに出力されます。 – gath
Hey Alex。私は同様の問題を抱えていますが、問題はcx_Freezeを使用してフリーズしようとした後に起こります。このファイルをどうやって走っていたのですか?ありがとう –