2

我是 wxPython 的新手,我有一个关于让按钮调整大小的非常基本的问题。

我在使用 python 2.7.3 和 wxPython 2.8.10.1 的 Mac 上工作

我已经使用它几天了,我想我了解 sizer 布局方法。我试图让按钮网格在窗口展开时增大。我知道这是一个基本问题,但我已经花了几个小时。

我不知道如何在此处获取屏幕截图,但按钮显示正常,然后在窗口放大时保持相同大小。

谢谢。

#!/usr/bin/env python
import wx
class Example(wx.Frame):

def __init__(self, *args, **kw):
    super(Example, self).__init__(*args, **kw) 
    self.InitUI()
    self.SetSize((550, 160))
    self.SetTitle("Label of Grids")
    self.Centre()
    self.Show()     

def InitUI(self):

    pnl = wx.Panel(self)       
    grid = wx.GridBagSizer(3, 3)
    for r in range(6):
        for c in range (4):
            buttonname = str(r)+"_"+str(c)
            labeltxt = "(row= "+str(r)+", col= "+str(c)+")"
            grid.Add(wx.Button(pnl, name = buttonname,label=labeltxt), (r, c),flag =wx.EXPAND)
    pnl.SetSizer(grid)

def main():

    app = wx.App()
    Example(None)
    app.MainLoop()    


if __name__ == '__main__':
    main()  
4

1 回答 1

1

当您使用GridBagSizer's 时,您需要调用AddGrowableCol(idx)AddGrowableRow(idx)方法以允许 Grid 中的各个行和列的大小是可变的。

于 2013-01-21T15:49:22.800 回答