2011-03-19 34 views
1

當過我GridBagSizer使用跨度我得到一個問題,這是我的代碼:wxPython的GridBagSizer問題

hbox3.Add(arrangeLabel) 
    hbox3.Add(self.arrangeComboBox, flag=wx.LEFT, border=10) 
    sizer.Add(hbox3, pos=(7,0), span=(7,3), flag=wx.ALL, border=15) 

    ####################### 
    hbox4 = wx.BoxSizer(wx.HORIZONTAL) 
    runButton = wx.Button(panel, -1, label='Run', size=(50,25)) 
    saveButton = wx.Button(panel, -1, label='Save', size=(50,25)) 
    cancelButton = wx.Button(panel, -1, label = 'Cancel', size=(50,25)) 

    hbox4.Add(runButton) 
    hbox4.Add(saveButton, flag=wx.LEFT, border=10) 
    hbox4.Add(cancelButton, flag=wx.LEFT, border=10) 

    sizer.Add(hbox4, pos=(8,0), flag=wx.ALIGN_CENTER_HORIZONTAL) 

    sizer.AddGrowableCol(1) 
    panel.SetSizer(sizer) 

在第三行,我有我的hbox3跨越從7,0到7,3。這有點影響我的第8排,我的第8排將消失在窗口的角落。即使我將pos =(8,0)更改爲pos =(9,0),我仍然遇到同樣的問題。我能解決這個問題的唯一方法是取消span =(7,3),這使得我的GUI看起來非常難看。

這是什麼問題?

回答

2

我認爲你誤解了span的說法。 span=(7,3)告訴sizer從其起始位置橫跨7行和3列拉伸小部件。如果您希望覆蓋7,0到7,3,請嘗試span=(1,4)

+0

謝謝,那就是問題! – lamba 2011-03-22 00:11:01