布局管理layout management — 概述

有两种对我们的部件进行布局的方式. 第一种方法是手动布局. 通过各自构建器中指定的位置,我们把那些部件来放在某处.[more…]

#!/usr/bin/python
#coding=utf-8

#layout.py

import wx

class MyFrame(wx.Frame):
def __init__(self, parent, id, title):
wx.Frame.__init__(self, parent, id, title, wx.DefaultPosition,
wx.Size(400, 50))

panel = wx.Panel(self, -1)
wx.Button(panel, -1, "<-", (0, 0))
wx.Button(panel, -1, "+", (80, 0))
wx.Button(panel, -1, "->", (160, 0))

class MyApp(wx.App):
def OnInit(self):
frame = MyFrame(None, -1, 'layout.py')
frame.Show(True)
frame.Center()
return True

app = MyApp(0)
app.MainLoop()

在窗口被缩放时,三个按钮的大小和位置都不会改变. 这是手动进行部件摆放时的主要特性.

f-06

图:layout.py
第二种方法是使用布局管理器. 此方法才是真实程序中普遍采用的. 你主要会用到各种sizers. 我们将会讨论以下几个.

  • wx.BoxSizer
  • wx.StaticBoxSizer
  • wx.GridSizer
  • wx.GridBagSizer
Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐