看了一点wxPython,感觉上 wx和MFC程序的结构差不多,
1. 在哪里对程序初始化?
wx.App.OnInit(), 这个方法类似于MFC的InitInstance,
我们在这个方法里对程序进行初始化,如创建并显示frame
注: 如果初始化成功,这个函数应该返回True,否则程序将终止
我们一般在wx.App.OnInit()中对我们的程序进行初始化,
如果有某些特殊原因需要重写__init__, 那么就必须调用父类的__init__方法,否则OnInit不会被调用
2. 在哪里清理我们的程序?
重写wx.App的OnExit(),当程序的主循环结束后,会调用这个函数
它类似于MFC中的ExitInstance
3. 窗口中的控件应该在哪里创建?
wx.Frame.__init__(), 我们可以在这个方法中初始化自己的控件
4. 程序如何开始?
创建一个wx.App子类的实例,并调用它的MainLoop()函数
和MFC的流程也是一样的,只不过,MFC把main这个入口函数隐藏起来了。
有时候,我们可能不想定义一个wx.App的子类并覆盖其OnInit方法,
那么我们可以使用wx.PySimpleApp, 这个类提供了最基本的OnInit方法。
注:在使用wxPython导入任何东西之前,都必须先导入wx
import wx
因为第一次导入wx时,wxPython会先对wxPython的其他模块进行初始化
下面是一