wxPythonの基本となるFrameのサンプルです。まずはFrameを生成し、そのFrame上に様々なものを配置していくのが主な流れとなります。
フレームの生成
まずは下記サンプルを実行してみましょう。
import wx application = wx.App() frame = wx.Frame(None, wx.ID_ANY, 'テストフレーム') frame.Show() application.MainLoop()
テストフレームというタイトルの何もないフレームが表示されたはずです。
では一つずつ何をしているのか見ていきましょう。
import wx application = wx.App() frame = wx.Frame(None, wx.ID_ANY, 'テストフレーム') frame.Show() application.MainLoop()
まずは3行目、この記述でアプリケーションの初期化を行います。wxPythonを使用したアプリケーションでは必ず必要です。5行目でFrameを生成しています。 引数はそれぞれ (親ウィンドウ, 識別子, タイトル)となりwx.ID_ANYは基本的に-1が入ります。次の6行目で生成したFrameの可視化を行う処理を呼び出します。最後の8行目の記述は、イベント待ち受け状態へ遷移する、といったところでしょうか。8行目の記述をコメントアウトしてアプリケーションを起動すると違いが良く分かると思います。
サイズの指定
表示サイズ指定は引数sizeを渡します。これで300×300のフレームが生成されます。
import wx application = wx.App() frame = wx.Frame(None, wx.ID_ANY, 'テストフレーム', size=(300, 300)) frame.Show() application.MainLoop()
表示位置の指定
ディスプレイ内における表示位置の指定です。 引数posを渡します(下記サンプルの場合は画面左上へ表示されます)。画面中央へ表示する際はCentre呼び出しておくと中央へ表示されます。
import wx application = wx.App() frame = wx.Frame(None, wx.ID_ANY, 'テストフレーム', pos=(0, 0)) # 中央へ表示する場合 # frame.Centre() frame.Show() application.MainLoop()
ステータスバーの利用
ステータスバーを利用する場合はCreateStatusBarを、ステータスバーに文字列を表示させるにはSetStatusTextを使用します。
import wx application = wx.App() frame = wx.Frame(None, wx.ID_ANY, 'テストフレーム') frame.CreateStatusBar() frame.SetStatusText('python-izm.com') frame.Show() application.MainLoop()
アイコンの割り当て
アイコンの割り当てはSetIconを使用します。
import wx application = wx.App() frame = wx.Frame(None, wx.ID_ANY, 'テストフレーム') icon = wx.Icon('frame.ico', wx.BITMAP_TYPE_ICO) frame.SetIcon(icon) frame.Show() application.MainLoop()