wxpython を使用して 3 つのwxTextCtrls
ウィジェットを持つ GUI を実装したいのですが、ウィンドウのサイズを変更するときにそれらを同じサイズに保ちたいと考えています。
これらに何もしなければwxTextCtrls
、うまくいきます。しかし、最初のウィジェットのように、これら 3 つのウィジェットの 1 つに多くの行のコンテンツを追加すると、ウィンドウのサイズを変更すると、他のウィジェットよりもサイズが大きくなります。これらのウィジェットを同じサイズに保つにはどうすればよいですか? ありがとう!
(PS: 生成された GUI の画像は私の質問をよりよく説明できると思いますが、画像を投稿できません。申し訳ありません)
私のコードは
import os
import wx
class My_Gui(wx.Frame):
def __init__(self, parent, title):
super(My_Gui, self).__init__(parent, title = title,size=(800,600))
self.InitUI()
self.Centre()
self.Show()
def InitUI(self):
my_panel = wx.Panel(self)
hbox = wx.BoxSizer(wx.HORIZONTAL)
fgs = wx.FlexGridSizer(3, 2, 25, 30)
button1 = wx.Button(my_panel, label='button1', size=(120,150))
button2 = wx.Button(my_panel, label='button2', size=(120,150))
button3 = wx.Button(my_panel, label='button3', size=(120,150))
self.tc1 = wx.TextCtrl(my_panel, style=wx.TE_MULTILINE | wx.HSCROLL)
self.tc2 = wx.TextCtrl(my_panel, style=wx.TE_MULTILINE | wx.HSCROLL)
self.tc3 = wx.TextCtrl(my_panel, style=wx.TE_MULTILINE | wx.HSCROLL)
fgs.AddMany([(button1),(self.tc1, 1, wx.EXPAND), (button2), \
(self.tc2, 1, wx.EXPAND), (button3), (self.tc3, 1, wx.EXPAND)])
fgs.AddGrowableRow(2, 1)
fgs.AddGrowableRow(1, 1)
fgs.AddGrowableRow(0, 1)
fgs.AddGrowableCol(1, 1)
hbox.Add(fgs, proportion=1, flag=wx.ALL|wx.EXPAND, border=40)
my_panel.SetSizer(hbox)
if __name__ == "__main__":
app = wx.App()
My_Gui(None, title='Example')
app.MainLoop()