Руководство https://wxpython.org/Phoenix/docs/html/wx.StaticBoxSizer.html дает хороший пример того, как использовать этот контейнер виджетов.
Вот ваш метод, модифицированный и более педантичный c метод, закомментированный, использование старого экспликации изречения лучше, чем неявного.
import wx
app = wx.App()
frame = wx.Frame(None, size=(700, 500))
panel = wx.Panel(frame)
vbox = wx.BoxSizer(wx.VERTICAL)
# Three StaticBox, with a StaticText within each
#sz1 = wx.StaticBoxSizer(wx.VERTICAL, panel, "Box1")
#sz1.Add(wx.StaticText(sz1.GetStaticBox(), wx.ID_ANY,"This window is a child of staticbox 1"))
#sz2 = wx.StaticBoxSizer(wx.VERTICAL, panel, "Box2")
#sz2.Add(wx.StaticText(sz2.GetStaticBox(), wx.ID_ANY,"This window is a child of staticbox 2"))
#sz3 = wx.StaticBoxSizer(wx.VERTICAL, panel, "Box3")
#sz3.Add(wx.StaticText(sz3.GetStaticBox(), wx.ID_ANY,"This window is a child of staticbox 3"))
#vbox.Add(sz1, 1, wx.EXPAND | wx.ALL, 5)
#vbox.Add(sz2, 1, wx.EXPAND | wx.ALL, 5)
#vbox.Add(sz3, 1, wx.EXPAND | wx.ALL, 5)
for n in range(3):
sizer = wx.StaticBoxSizer(wx.VERTICAL, panel,label=f"Box {n}")
sizer.Add(wx.StaticText(sizer.GetStaticBox(), label=f"StaticText of box {n}"))
vbox.Add(sizer, 1, wx.EXPAND | wx.ALL, 5)
panel.SetSizer(vbox)
frame.Show()
app.MainLoop()
Следует отметить, что некоторые themes
(на Linux, не знаю о других платформах) не отображать окно. Поэтому, хотя он может работать на вашем компьютере, он может не работать на других, в зависимости от выбранного ими вида рабочего стола.