全部博文(34)
分类: Python/Ruby
2010-05-22 10:15:48
wxAui Frame Management用法:
1. 总体步骤
# 安装wxpython2.8.*.*后
imp
# 初始化一个wxAui管理框架对象
mgr = wx.aui.AuiManager()
# 通知self作为管理所有子对象的父对象
# self可以是wxWindow任何子对象
mgr.SetManagedWindow(self)
# 将控件放入所指定的位置(具体参考“2. 布局步骤”)
mgr.AddPane(wxWindow* window, const wxAuiPaneInfo& pane_info)
# "commit" all changes made to FrameManager
mgr.Update()
2. 布局步骤
调用wxAuiPaneInfo()里提供的方法,如:
pane1 = wx.Panel(self)
mgr.AddPane(pane1, wx.aui.AuiPaneInfo().
Name("test1").Caption("pane1").
CloseButton(True).MaximizeButton(True))
其中以下4步顺序操作最为关键:
(1)Direction:先确定Center的对象, 这样就能决定哪个控件是四周拉伸,
再确定Left, Right, Top, Bottom
(2)Layer:相同Layer的控件可以看作一个整体,类似BoxSizer,
从靠近Center的对象从中间向四周开始计算,最里面的为Layer(0)可缺省)。
(3)Position:在同一个Direction和Layer里控件放置的次序,默认情
是水平方向按水平排列,竖直方向按竖直排列