Что я хочу сделать, это создать 3 столбца, которые будут расширяться при расширении окна.Но я хочу наложить на него ограничения, чтобы разные столбцы расширялись до разных максимальных значений.
Здесь я использовал wxGlade для создания фрейма с сортировщиком сетки, который имеет 1 строку и три столбца.Я хочу, чтобы Part1 имела фиксированную ширину 'A', Part2 имела фиксированную ширину 'B', а Part3 могла бы расширяться как обычно.
Как мне это сделать?
#!/usr/bin/env python
# -*- coding: iso-8859-15 -*-
# generated by wxGlade 0.6.3 on Tue May 24 11:35:21 2011
import wx
# begin wxGlade: extracode
# end wxGlade
class MyFrame1(wx.Frame):
def __init__(self, *args, **kwds):
# begin wxGlade: MyFrame1.__init__
kwds["style"] = wx.DEFAULT_FRAME_STYLE
wx.Frame.__init__(self, *args, **kwds)
self.panel_1 = wx.Panel(self, -1)
self.sizer_10_staticbox = wx.StaticBox(self.panel_1, -1, "Part2")
self.sizer_11_staticbox = wx.StaticBox(self.panel_1, -1, "Part3")
self.sizer_9_staticbox = wx.StaticBox(self.panel_1, -1, "Part1")
self.__set_properties()
self.__do_layout()
# end wxGlade
def __set_properties(self):
# begin wxGlade: MyFrame1.__set_properties
self.SetTitle("frame_2")
# end wxGlade
def __do_layout(self):
# begin wxGlade: MyFrame1.__do_layout
sizer_8 = wx.BoxSizer(wx.VERTICAL)
grid_sizer_4 = wx.GridSizer(1, 3, 0, 0)
sizer_11 = wx.StaticBoxSizer(self.sizer_11_staticbox, wx.HORIZONTAL)
sizer_10 = wx.StaticBoxSizer(self.sizer_10_staticbox, wx.HORIZONTAL)
sizer_9 = wx.StaticBoxSizer(self.sizer_9_staticbox, wx.HORIZONTAL)
grid_sizer_4.Add(sizer_9, 1, wx.EXPAND, 0)
grid_sizer_4.Add(sizer_10, 1, wx.EXPAND, 0)
grid_sizer_4.Add(sizer_11, 1, wx.EXPAND, 0)
self.panel_1.SetSizer(grid_sizer_4)
sizer_8.Add(self.panel_1, 1, wx.EXPAND, 0)
self.SetSizer(sizer_8)
sizer_8.Fit(self)
self.Layout()
# end wxGlade
# end of class MyFrame1
if __name__ == "__main__":
app = wx.PySimpleApp(0)
wx.InitAllImageHandlers()
frame_2 = MyFrame1(None, -1, "")
app.SetTopWindow(frame_2)
frame_2.Show()
app.MainLoop()