Sizers布局组件1

来源:互联网 发布:黑客技术软件 编辑:程序博客网 时间:2024/06/16 10:05

   Sizers布局管理器是管理界面中各种控件的组件,使用sizers组件可以自动解决控件的位置和控件之间的间距问题,提高了GUI程序的可控性:

#!/usr/bin/python# -*- coding: UTF-8 -*-import wxclass GridSizerFrame(wx.Frame):    def __init__(self):        wx.Frame.__init__(self, None, -1, u"布局管理器-GridSizer", size = (300, 150))        panel = wx.Panel(self, -1)   #创建面板对象panel        sizer = wx.GridSizer(rows=3, cols=3, hgap=5, vgap=5)          #创建gridsizer布局        colorList = [u'红', u'蓝', u'绿', u'黄', u'黑', u'紫', u'白']  #列表 colorList        for color in colorList:            btn = wx.Button(panel, -1, color)  #标签与按钮连接            sizer.Add(btn, 0, 0)     #按钮添加到sizer即gridsizer布局        panel.SetSizer(sizer)    #将sizer即gridsizer布局添加到 panel        panel.Fit()             #计算布局管理器和容器窗口的大小if __name__ == '__main__':    app = wx.PySimpleApp()    frame = GridSizerFrame()    frame.Show()    app.MainLoop()

结果:



Flex Grid Sizer布局

Flex Grid Sizer布局是对Grid Sizer的改进,Flex Grid Sizer布局管理器用于存放大小可变的组件。

#!/usr/bin/python# -*- coding: UTF-8 -*-import wxclass GridSizerFrame(wx.Frame):    def __init__(self):        wx.Frame.__init__(self, None, -1, u"布局管理器-gridSizer", size = (300, 150))        panel = wx.Panel(self, -1)        colorList = [u'红', u'蓝', u'绿', u'黄', u'黑']        sizer = wx.FlexGridSizer(rows = 3, cols=3, hgap=5, vgap=5)#创建FlexGridSizer类型的布局,布局为3行3列组件之间水平距离和垂直距离均为5        for color in colorList:            btn = wx.Button(panel, -1, color)            sizer.Add(btn, 0, 0)   #创建了5个按钮,并且加入到sizer布局中        btn = wx.Button(panel, -1, u'紫') #创建标签为紫色的按钮        btn.SetMinSize((100,40))   #设置紫色按钮大小        sizer.Add(btn, 0, 0)  #将紫色按钮添加到布局中        btn = wx.Button(panel, -1, u'白')        btn.SetMinSize((50,30))        sizer.Add(btn, 0, 0)        panel.SetSizer(sizer)# #将sizer即Flex grid sizer布局添加到 panel        panel.Fit()    # #计算布局管理器和容器窗口的大小        help(wx.ComboBox.__init__)   # 运行栏显示wx.ComboBox的构造函数解释if __name__ == '__main__':    app = wx.PySimpleApp()    frame = GridSizerFrame()    frame.Show()    app.MainLoop()

结果:

同时显示了

help(wx.ComboBox.__init__) 的结果
<img src="http://img.blog.csdn.net/20140813141631125" alt="" />


0 0
原创粉丝点击