StaticText
wxPythonに限らず、全てのGUIアプリケーションにおいて使用頻度が高いであろうStaticTextの使用方法です。固定の文字列を表示する事が出来るので、表題や説明書きなどで幅広く活躍するでしょう。
パネルへStaticTextを追加しています。引数には(親ウィンドウ、識別子、ラベル)の順番で渡しています。
# -*- coding: utf-8 -*-
import wx
application = wx.App()
frame = wx.Frame(None, wx.ID_ANY, u"テストフレーム", size=(300,200))
panel = wx.Panel(frame, wx.ID_ANY)
panel.SetBackgroundColour("#AFAFAF")
s_text_1 = wx.StaticText(panel, wx.ID_ANY, u"テキスト1")
s_text_2 = wx.StaticText(panel, wx.ID_ANY, u"テキスト2")
s_text_3 = wx.StaticText(panel, wx.ID_ANY, u"テキスト3")
s_text_4 = wx.StaticText(panel, wx.ID_ANY, u"テキスト4")
s_text_5 = wx.StaticText(panel, wx.ID_ANY, u"テキスト5")
layout = wx.BoxSizer(wx.VERTICAL)
layout.Add(s_text_1)
layout.Add(s_text_2)
layout.Add(s_text_3)
layout.Add(s_text_4)
layout.Add(s_text_5)
panel.SetSizer(layout)
frame.Show()
application.MainLoop()
--実行結果--

先程のサンプルでは初期化時にラベル(StaticTextに表示される文字)を指定していました。 当然ラベルを変更するメソッドも用意されており、状況によって文字列を変更する事も可能です。
# -*- coding: utf-8 -*-
import wx
application = wx.App()
frame = wx.Frame(None, wx.ID_ANY, u"テストフレーム", size=(300,200))
panel = wx.Panel(frame, wx.ID_ANY)
panel.SetBackgroundColour("#AFAFAF")
s_text_1 = wx.StaticText(panel, wx.ID_ANY, u"テキスト1")
s_text_2 = wx.StaticText(panel, wx.ID_ANY, u"テキスト2")
s_text_3 = wx.StaticText(panel, wx.ID_ANY, u"テキスト3")
s_text_4 = wx.StaticText(panel, wx.ID_ANY, u"テキスト4")
s_text_5 = wx.StaticText(panel, wx.ID_ANY, u"テキスト5")
s_text_3.SetLabel("Text3")
layout = wx.BoxSizer(wx.VERTICAL)
layout.Add(s_text_1)
layout.Add(s_text_2)
layout.Add(s_text_3)
layout.Add(s_text_4)
layout.Add(s_text_5)
panel.SetSizer(layout)
frame.Show()
application.MainLoop()
--実行結果--
s_text_3のラベルが「テキスト3」ではなく「Text3」となりました。

StaticTextのフォント(文字の大きさや太字設定)を変更するには「SetFont」を使用します。17行目にて使用するFontクラスを初期化しています。
# -*- coding: utf-8 -*-
import wx
application = wx.App()
frame = wx.Frame(None, wx.ID_ANY, u"テストフレーム", size=(300,200))
panel = wx.Panel(frame, wx.ID_ANY)
panel.SetBackgroundColour("#AFAFAF")
s_text_1 = wx.StaticText(panel, wx.ID_ANY, u"テキスト1")
s_text_2 = wx.StaticText(panel, wx.ID_ANY, u"テキスト2")
s_text_3 = wx.StaticText(panel, wx.ID_ANY, u"テキスト3")
s_text_4 = wx.StaticText(panel, wx.ID_ANY, u"テキスト4")
s_text_5 = wx.StaticText(panel, wx.ID_ANY, u"テキスト5")
font = wx.Font(20, wx.FONTFAMILY_DEFAULT, wx.FONTSTYLE_NORMAL, wx.FONTWEIGHT_NORMAL)
s_text_3.SetFont(font)
layout = wx.BoxSizer(wx.VERTICAL)
layout.Add(s_text_1)
layout.Add(s_text_2)
layout.Add(s_text_3)
layout.Add(s_text_4)
layout.Add(s_text_5)
panel.SetSizer(layout)
frame.Show()
application.MainLoop()
--実行結果--
「テキスト3」の文字の大きさを変更しました。

StaticTextの文字色の変更には「SetForegroundColour」を使用します。サンプルでは黒(デフォルト色)から赤へ変更しています。
# -*- coding: utf-8 -*-
import wx
application = wx.App()
frame = wx.Frame(None, wx.ID_ANY, u"テストフレーム", size=(300,200))
panel = wx.Panel(frame, wx.ID_ANY)
panel.SetBackgroundColour("#AFAFAF")
s_text_1 = wx.StaticText(panel, wx.ID_ANY, u"テキスト1")
s_text_2 = wx.StaticText(panel, wx.ID_ANY, u"テキスト2")
s_text_3 = wx.StaticText(panel, wx.ID_ANY, u"テキスト3")
s_text_4 = wx.StaticText(panel, wx.ID_ANY, u"テキスト4")
s_text_5 = wx.StaticText(panel, wx.ID_ANY, u"テキスト5")
s_text_3.SetForegroundColour("#FF0000")
layout = wx.BoxSizer(wx.VERTICAL)
layout.Add(s_text_1)
layout.Add(s_text_2)
layout.Add(s_text_3)
layout.Add(s_text_4)
layout.Add(s_text_5)
panel.SetSizer(layout)
frame.Show()
application.MainLoop()
--実行結果--
「テキスト3」文字色を赤へ変更しました。

StaticTextの背景色の変更は「SetBackgroundColour」を使用します。下記サンプルでは青へ変更しています。
# -*- coding: utf-8 -*-
import wx
application = wx.App()
frame = wx.Frame(None, wx.ID_ANY, u"テストフレーム", size=(300,200))
panel = wx.Panel(frame, wx.ID_ANY)
panel.SetBackgroundColour("#AFAFAF")
s_text_1 = wx.StaticText(panel, wx.ID_ANY, u"テキスト1")
s_text_2 = wx.StaticText(panel, wx.ID_ANY, u"テキスト2")
s_text_3 = wx.StaticText(panel, wx.ID_ANY, u"テキスト3")
s_text_4 = wx.StaticText(panel, wx.ID_ANY, u"テキスト4")
s_text_5 = wx.StaticText(panel, wx.ID_ANY, u"テキスト5")
s_text_3.SetBackgroundColour("#0000FF")
layout = wx.BoxSizer(wx.VERTICAL)
layout.Add(s_text_1)
layout.Add(s_text_2)
layout.Add(s_text_3)
layout.Add(s_text_4)
layout.Add(s_text_5)
panel.SetSizer(layout)
frame.Show()
application.MainLoop()
--実行結果--
「テキスト3」背景色を青へ変更しました。

StaticTextへツールチップ(補足情報を載せる小さいウィンドウ)を表示させるには「SetToolTipString」を使用します。
# -*- coding: utf-8 -*-
import wx
application = wx.App()
frame = wx.Frame(None, wx.ID_ANY, u"テストフレーム", size=(300,200))
panel = wx.Panel(frame, wx.ID_ANY)
panel.SetBackgroundColour("#AFAFAF")
s_text_1 = wx.StaticText(panel, wx.ID_ANY, u"テキスト1")
s_text_2 = wx.StaticText(panel, wx.ID_ANY, u"テキスト2")
s_text_3 = wx.StaticText(panel, wx.ID_ANY, u"テキスト3")
s_text_4 = wx.StaticText(panel, wx.ID_ANY, u"テキスト4")
s_text_5 = wx.StaticText(panel, wx.ID_ANY, u"テキスト5")
s_text_3.SetToolTipString("python-izm.com")
layout = wx.BoxSizer(wx.VERTICAL)
layout.Add(s_text_1)
layout.Add(s_text_2)
layout.Add(s_text_3)
layout.Add(s_text_4)
layout.Add(s_text_5)
panel.SetSizer(layout)
frame.Show()
application.MainLoop()
--実行結果--
「テキスト3」の上にマウスカーソルを載せると、メッセージが出るようになります。

StaticTextを非表示にするには「Hide」を使用しましょう。 非表示状態のStaticTextを表示させるには「Show」を用います。 なおStaticTextは「見えない」だけで本体は存在しています。非表示状態のStaticTextに対してラベル設定をしたりする事も可能です。
# -*- coding: utf-8 -*-
import wx
application = wx.App()
frame = wx.Frame(None, wx.ID_ANY, u"テストフレーム", size=(300,200))
panel = wx.Panel(frame, wx.ID_ANY)
panel.SetBackgroundColour("#AFAFAF")
s_text_1 = wx.StaticText(panel, wx.ID_ANY, u"テキスト1")
s_text_2 = wx.StaticText(panel, wx.ID_ANY, u"テキスト2")
s_text_3 = wx.StaticText(panel, wx.ID_ANY, u"テキスト3")
s_text_4 = wx.StaticText(panel, wx.ID_ANY, u"テキスト4")
s_text_5 = wx.StaticText(panel, wx.ID_ANY, u"テキスト5")
s_text_3.Hide()
#s_text_3.Show()
layout = wx.BoxSizer(wx.VERTICAL)
layout.Add(s_text_1, flag=wx.GROW)
layout.Add(s_text_2, flag=wx.GROW)
layout.Add(s_text_3, flag=wx.GROW)
layout.Add(s_text_4, flag=wx.GROW)
layout.Add(s_text_5, flag=wx.GROW)
panel.SetSizer(layout)
frame.Show()
application.MainLoop()
--実行結果--
「テキスト3」が隠れています。
見えないだけなのでプログラム上で操作してもエラーとはなりません。

文字列の左寄せ、右寄せ、中央寄せを設定するには「style」を渡します。
# -*- coding: utf-8 -*-
import wx
application = wx.App()
frame = wx.Frame(None, wx.ID_ANY, u"テストフレーム", size=(300,200))
panel = wx.Panel(frame, wx.ID_ANY)
panel.SetBackgroundColour("#AFAFAF")
s_text_1 = wx.StaticText(panel, wx.ID_ANY, u"テキスト1")
s_text_2 = wx.StaticText(panel, wx.ID_ANY, u"テキスト2")
s_text_3 = wx.StaticText(panel, wx.ID_ANY, u"テキスト3", style=wx.TE_LEFT)
s_text_4 = wx.StaticText(panel, wx.ID_ANY, u"テキスト4", style=wx.TE_CENTER)
s_text_5 = wx.StaticText(panel, wx.ID_ANY, u"テキスト5", style=wx.TE_RIGHT)
layout = wx.BoxSizer(wx.VERTICAL)
layout.Add(s_text_1, flag=wx.GROW)
layout.Add(s_text_2, flag=wx.GROW)
layout.Add(s_text_3, flag=wx.GROW)
layout.Add(s_text_4, flag=wx.GROW)
layout.Add(s_text_5, flag=wx.GROW)
panel.SetSizer(layout)
frame.Show()
application.MainLoop()
--実行結果--
テキスト3を左寄せ、テキスト4を中央寄せ、テキスト5を右寄せにしました。指定無しの場合はデフォルトで左寄せが適用されます。

空文字のStaticTextを用いてレイアウトの微調整を行う事が可能です。画面上では何も存在していないように見えるので、1行分空いているかのように配置されます。
# -*- coding: utf-8 -*-
import wx
application = wx.App()
frame = wx.Frame(None, wx.ID_ANY, u"テストフレーム", size=(300,200))
panel = wx.Panel(frame, wx.ID_ANY)
panel.SetBackgroundColour("#AFAFAF")
s_text_1 = wx.StaticText(panel, wx.ID_ANY, u"テキスト1")
s_text_2 = wx.StaticText(panel, wx.ID_ANY, u"テキスト2")
s_text_3 = wx.StaticText(panel, wx.ID_ANY, "")
s_text_4 = wx.StaticText(panel, wx.ID_ANY, u"テキスト4")
s_text_5 = wx.StaticText(panel, wx.ID_ANY, u"テキスト5")
layout = wx.BoxSizer(wx.VERTICAL)
layout.Add(s_text_1, flag=wx.GROW)
layout.Add(s_text_2, flag=wx.GROW)
layout.Add(s_text_3, flag=wx.GROW)
layout.Add(s_text_4, flag=wx.GROW)
layout.Add(s_text_5, flag=wx.GROW)
panel.SetSizer(layout)
frame.Show()
application.MainLoop()
--実行結果--
テキスト2とテキスト4の間に空文字のStaticTextが入っています。

GUIアプリには最早必須です!
