とある科学の備忘録

とある科学の備忘録

CやPythonのプログラミング、Arduino等を使った電子工作をメインに書いています。また、木製CNCやドローンの自作製作記も更新中です。たまに機械学習とかもやってます。

【Python】wxPython を使って、GUIアプリを作る

wxPython というライブラリを使用すると、PythonGUIアプリケーションを作ることができます。

公式サイト:Welcome to wxPython! | wxPython


1.インストール

コマンドプロンプトを開きます。

②インストール

pip install wxPython

と入力します。
f:id:pythonjacascript:20180920002210j:plain:h200


2.サンプルプログラム1

以下のプログラムを実行してみてください。

import wx

app = wx.App(False)
frame = wx.Frame(None, -1, 'Window Title')
frame.Show()
app.MainLoop()

サンプルプログラム2

上のプログラムは、クラスを使って次のように書くこともできます。

import wx
class Window(wx.Frame):
    def __init__(self, parent, id = -1, title = None):
        wx.Frame.__init__(self, parent, id, title)
        
        self.Show(True)
        
    def CloseWindow(self):
        self.close(True)
 
if __name__ == "__main__":
    app = wx.App()
    Window(None, wx.ID_ANY, "Window Title")
    app.MainLoop()

3.実行

上のプログラムを実行します。

ただし、Spyderを使っている場合は次のようなエラーが出ると思います。

 The wx.App object must be created first!

これは、Spyder が wxPython で動いているからだそうです。
なので、実行するときは Spyder の「ファイルを実行(F5)」ではなく、エクスプローラから「(ファイル名).py」をクリックして実行してください。

このような画面が作成されれば成功です。
f:id:pythonjacascript:20180922164446j:plain