1) 在html中带滚动条的容器,是通过对容器设置overflown属性实现的,在wxpython中带滚动条的容器是一个单独的容器,而不是通过style设置的方式。这个容器就是wx.ScrolledWindow,基本上用wx.Panel的地方都可以换成它。
2) 对于对象框,你可以使用样式wx.STAY_ON_TOP将对话框显示在系统中任何其它窗口的上面,包括系统窗口和wxPython应用程序窗口。
3) wx.ProgressDialog用于显示进度条。其最有用的方法是Update()。
4) wx.FileDialog为文件对话框。wx.FileDialog的两个最重要的样式标记是wx.OPEN和wx.SAVE,它们表明对话框的类型并影响对话框的行为。
用于打开文件的对话框有两个标记,它们进一步影响对话框的行为。wx.HIDE_READONLY标记灰化复选框,使用户以只读模式打开文件。wx.MULTIPLE标记使用户可以在一个目录中选择打开多个文件。
保存文件对话框有一个有用的标记wx.OVERWRITE_PROMPT,它使得保存文件时,如果有相同的文件存在,则提示用户是否覆盖。
你可以使用方法GetPath()来得到用户的选择,该函数的返回值是字符串形式的文件全路径名。如果对话框是一个使用了wx.MULTIPLE标记的打开对话框,则用GetPaths()代替GetPath()。
5) 如果用户想去选择一个目录而非一个文件,使用wx.DirDialog。该对话框的样式标记wx.DD_NEW_DIR_BUTTON给对话框一个用于创建目录的一个按钮。这个标记在老版的微软Windows中不工作。
6) 对话框与框架之间的另一区别是对话框有内建的验证器行为,而框架没有。如果你喜欢将验证器用于不在对话框内的控件,那么调用父窗口的Validate()方法。如果父窗口已设置了wx.WS_EX_VALIDATE_RECURSIVELY额外样式,那么所有的子窗口的Validate()方法也被调用。如果任一验证失败,那么Validate返回False。
7) 除了time模块有sleep()方法可以设定时器,wxpython也有Timer类可以做定时器(怎么这么像as3?)。
self.timer = wx.Timer(self) #创建定时器
self.Bind(wx.EVT_TIMER, self.OnTimer, self.timer) #绑定一个定时器事件
self.timer.Start(1000) #设定时间间隔
8) proportion仅被box sizer使用,并当父窗口尺寸改变时影响一个项目如何被绘制。
9) 如果sizer已在屏幕上显示了,而你又要给sizer添加一个新的项目,那么你需要调用sizer的Layout()方法来迫使sizer自己重新排列,以容纳新的项。