wxPythonでウインドウを表示してみよう
wxPythonで、ウィンドウを表示する方法を説明します。
目次
確認環境
- Windows 10 Home
- Python 3.9
- wxPython 4.1
サンプルソース
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 |
################################################################################ #履歴 # Ver.1.00.00 新規作成 ################################################################################ import wx WinTitle = "ウィンドウのタイトルを設定します" #ウィンドウタイトル WinW = 400 #ウィンドウの横幅(px) WinH = 300 #ウィンドウの高さ(px) ################################################################################ #自作Appクラスの設計図 #GUIプログラム(wxPython)本体です。 #現時点で理解する必要はありません。「こういう」ものです ################################################################################ class MyApp(wx.App): def OnInit(self): return True ################################################################################ #フレームの設計図 #現時点で理解する必要はありません。「こういう」ものです ################################################################################ class MyFrame1(wx.Frame): def __init__(self, parent): # フレーム作成時に呼び出されます wx.Frame.__init__ (self, None, -1, WinTitle, size=(WinW, WinH)) # ウィンドウタイトルとウィンドウサイズをセットします ################################################################################ #ここまでは設計図になります。 ################################################################################ ################################################################################ #メイン処理 #ここがプログラムの本番、スタート地点となります。 ################################################################################ if __name__ == '__main__': window1 = MyApp(0) # 上に書いてあるプログラム本体の設計図を実行し、「window1」という名前をつけました # MyApp(0)の「0」は気にしないでください frame1 = MyFrame1(None) # 上に書いてあるフレームの設計図を実行し、「frame1」という名前をつけました # 「None」は気にしないでください panel1 = wx.Panel(frame1) # 1つ上で作成したフレーム「frame1」に対して、パネルを作成し「panel1」という名前をつけました frame1.Show() # フレームを表示 window1.MainLoop() # イベント待機(クリック等操作されるのをまっています) |
まずは、この内容をコピーして、hoge.pyとして(文字コード:UTF-8)で保存してください。
「hoge」の部分は好きに決めて構いません。
hoge.pyを右クリックし、「Edit with IDLE」で適当なPythonを選択してください。
起動したウィンドウのメニューから[Run]-[Run Module](F5)を選択してください。
(実行できれば、他のやり方でも構いません)
そうすると、↓のようなウィンドウが表示されます。
プログラムは実質20行もありませんので
- ウィンドウのタイトル
- ウィンドウの幅(横の長さ)
- ウィンドウの高さ(縦の長さ)
くらいは簡単に変更できると思いますので、試してみてください。
その他に例えば、グレー部分の背景色を変更したい場合は
1 |
panel1 = wx.Panel(frame1) |
と
1 |
frame1.Show() |
の間に
1 |
panel1.SetBackgroundColour('#FF00FF') |
↑こんな感じのものを入れ
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 |
################################################################################ #履歴 # Ver.1.00.00 新規作成 # Ver.1.00.01 背景色を追加 ################################################################################ import wx WinTitle = "ウィンドウのタイトルを設定します" #ウィンドウタイトル WinW = 400 #ウィンドウの横幅(px) WinH = 300 #ウィンドウの高さ(px) ################################################################################ #自作Appクラスの設計図 #GUIプログラム(wxPython)本体です。 #現時点で理解する必要はありません。「こういう」ものです ################################################################################ class MyApp(wx.App): def OnInit(self): return True ################################################################################ #フレームの設計図 #現時点で理解する必要はありません。「こういう」ものです ################################################################################ class MyFrame1(wx.Frame): def __init__(self, parent): # フレーム作成時に呼び出されます wx.Frame.__init__ (self, None, -1, WinTitle, size=(WinW, WinH)) # ウィンドウタイトルとウィンドウサイズをセットします ################################################################################ #ここまでは設計図になります。 ################################################################################ ################################################################################ #メイン処理 #ここがプログラムの本番、スタート地点となります。 ################################################################################ if __name__ == '__main__': window1 = MyApp(0) # 上に書いてあるプログラム本体の設計図を実行し、「window1」という名前をつけました # MyApp(0)の「0」は気にしないでください frame1 = MyFrame1(None) # 上に書いてあるフレームの設計図を実行し、「frame1」という名前をつけました # 「None」は気にしないでください panel1 = wx.Panel(frame1) # 1つ上で作成したフレーム「frame1」に対して、パネルを作成し「panel1」という名前をつけました panel1.SetBackgroundColour('#FF00FF') # panel1の背景色を#FF00FFにしました。 # 背景色は設定しなければ、プログラムが動作するPCの環境設定に従った色になるはずです # 自分で好きな色にしたい場合は「カラーコード」などで検索してください ############################################################################ # ############################################################################ frame1.Show() # フレーム表示 window1.MainLoop() # イベント待機 |
こんな風にすれば実現できます。
「#FF00FF」が赤紫になります。
色については「カラーコード」等で検索すれば分かると思います。
補足
今回は、Appクラス、Frameクラス、Panelクラスというものを使用しました。
それぞれのリファレンスは以下になります。(Chromeなら右クリックから「日本語に翻訳」で翻訳できます。)
以上。
wxPython入門
- Pythonのインストール
- wxPythonのインストール
- wxPythonというわけではないけどGUIについて
- wxPythonでウインドウを表示してみよう
- wxPythonでメッセージボックスを使いこなそう
- wxPythonでボタンを使いこなそう
- wxPythonで1行テキストエリアを使いこなそう
- wxPythonでチェックボックスを使いこなそう
- wxPythonでラジオボタンを使いこなそう
- wxPythonでリストボックスを使いこなそう
- wxPythonでコンボボックスを使いこなそう
- wxPythonで複数行テキストエリアを使いこなそう
- wxPythonでダイアログを表示してみよう
- wxPythonで外部ファイルの内容を読み込もう
- wxPythonでファイル保存ダイアログを使いこなそう
- wxPythonでウィンドウのアイコンを設定してみよう
- wxPythonでメニューバーを作成してみよう
- wxPythonでドラッグアンドドロップに対応しよう
- wxPythonで作成したプログラムをexeにしよう
- PythonでGUI wxPyhonを極める
- PythonでGUI wxPython サンプルプログラム
- 鬼滅の刃 紅蓮華 歌詞表示アプリ(wxPython)
後記
最後までお読みくださりありがとうございます。
こんなに更新したのに、現在はほぼ誰も見ていないゴミカスクズ無価値ブログです。
よければ(はてな)ブックマークや拡散をお願いいたします。
更新の原動力として励ましが欲しいのです…<(_ _)>
ディスカッション
コメント一覧
まだ、コメントがありません