Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- '''
- Das Problem war:
- Du hast GridSizer verwendet. Dieser hat jedoch statische Maße, d.h. die Elemente nehmen prozentual beim Resizen immer denselben Teil ein (bei 4 Elementen 25%, bei 3 sind es 33% etc.)
- Deshalb FlexGridSizer verwenden. Dort wird die tatsächliche Größe genutzt.
- '''
- import wx
- class MyFrame1 ( wx.Frame ):
- def __init__( self, parent ):
- wx.Frame.__init__ ( self, parent, id = wx.ID_ANY, title = wx.EmptyString, pos = wx.DefaultPosition, size = wx.Size( 753,322 ), style = wx.DEFAULT_FRAME_STYLE|wx.TAB_TRAVERSAL )
- self.SetSizeHintsSz( wx.DefaultSize, wx.DefaultSize )
- bSizer1 = wx.BoxSizer( wx.VERTICAL )
- self.m_panel1 = wx.Panel( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.TAB_TRAVERSAL )
- bSizer3 = wx.BoxSizer( wx.VERTICAL )
- bSizer5 = wx.BoxSizer( wx.VERTICAL )
- #~ ############# FlexGridSizer statt GridSizer !!
- #~ gSizer1 = wx.GridSizer( 0, 3, 0, 0 )
- gSizer1 = wx.FlexGridSizer( 0, 3, 0, 0 )
- #~ #############
- bSizer8 = wx.BoxSizer( wx.VERTICAL )
- bSizer8.SetMinSize( wx.Size( 100,-1 ) )
- self.m_button7 = wx.Button( self.m_panel1, wx.ID_ANY, u"MyButton", wx.DefaultPosition, wx.DefaultSize, 0 )
- bSizer8.Add( self.m_button7, 0, wx.ALL, 5 )
- self.m_button8 = wx.Button( self.m_panel1, wx.ID_ANY, u"MyButton", wx.DefaultPosition, wx.DefaultSize, 0 )
- bSizer8.Add( self.m_button8, 0, wx.ALL, 5 )
- self.m_button9 = wx.Button( self.m_panel1, wx.ID_ANY, u"MyButton", wx.DefaultPosition, wx.DefaultSize, 0 )
- bSizer8.Add( self.m_button9, 0, wx.ALL, 5 )
- #~ gSizer1.Add( bSizer8, 1, 0, 5 ) # Button 1-3
- bSizer11 = wx.BoxSizer( wx.VERTICAL )
- m_listBox1Choices = []
- self.m_listBox1 = wx.ListBox( self.m_panel1, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, m_listBox1Choices, 0 )
- bSizer11.Add( self.m_listBox1, 1, wx.ALL|wx.EXPAND, 5 )
- #~ gSizer1.Add( bSizer11, 1, wx.EXPAND, 5 ) # Listbox
- bSizer12 = wx.BoxSizer( wx.VERTICAL )
- bSizer12.SetMinSize( wx.Size( 120,-1 ) )
- self.m_textCtrl1 = wx.TextCtrl( self.m_panel1, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, 0 )
- bSizer12.Add( self.m_textCtrl1, 0, wx.ALL, 5 )
- self.m_textCtrl2 = wx.TextCtrl( self.m_panel1, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, 0 )
- bSizer12.Add( self.m_textCtrl2, 0, wx.ALL, 5 )
- self.m_textCtrl3 = wx.TextCtrl( self.m_panel1, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, 0 )
- bSizer12.Add( self.m_textCtrl3, 0, wx.ALL, 5 )
- #~ gSizer1.Add( bSizer12, 0, wx.ALIGN_RIGHT, 5 ) # Input 1-3
- #~ #############
- gSizer1.AddMany([(bSizer8), (bSizer11, 1, wx.EXPAND), (bSizer12)])
- gSizer1.AddGrowableRow(0, 1) # Listview, Zeile im Grid wählen, dadurch resizable vertikal
- gSizer1.AddGrowableCol(1, 1) # Listview, Spalte im Grid wählen, dadurch resizable horizontal
- #~ #############
- bSizer5.Add( gSizer1, 1, wx.EXPAND, 5 )
- bSizer3.Add( bSizer5, 1, wx.EXPAND, 5 )
- self.m_staticline1 = wx.StaticLine( self.m_panel1, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL )
- bSizer3.Add( self.m_staticline1, 0, wx.EXPAND |wx.ALL, 5 )
- bSizer2 = wx.BoxSizer( wx.HORIZONTAL )
- self.m_button1 = wx.Button( self.m_panel1, wx.ID_ANY, u"MyButton", wx.DefaultPosition, wx.DefaultSize, 0 )
- bSizer2.Add( self.m_button1, 0, wx.ALL, 5 )
- self.m_button2 = wx.Button( self.m_panel1, wx.ID_ANY, u"MyButton", wx.DefaultPosition, wx.DefaultSize, 0 )
- bSizer2.Add( self.m_button2, 0, wx.ALL, 5 )
- self.m_button3 = wx.Button( self.m_panel1, wx.ID_ANY, u"MyButton", wx.DefaultPosition, wx.DefaultSize, 0 )
- bSizer2.Add( self.m_button3, 0, wx.ALL, 5 )
- bSizer3.Add( bSizer2, 0, 0, 5 )
- self.m_panel1.SetSizer( bSizer3 )
- self.m_panel1.Layout()
- bSizer3.Fit( self.m_panel1 )
- bSizer1.Add( self.m_panel1, 1, wx.EXPAND |wx.ALL, 5 )
- self.SetSizer( bSizer1 )
- self.Layout()
- self.Centre( wx.BOTH )
- def __del__( self ):
- pass
- app = wx.App()
- MyFrame1(None).Show()
- app.MainLoop()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement