Python in Action第二个例子,倒是很简单,却是最基本的GUI程序框架,里面有最基本的实现GUI流程
import wx
class MyApp(wx.App):
def OnInit(self):
frame=wx.Frame(parent=None,title='Bare')
frame.Show()
return True
app=MyApp()
app.MainLoop()
结果:
有必要提一下第一行:import wx 这条语句是导入wx模块,这个模块复杂(源自Python in Action),书里讲到这个模块与老模块的导入方法,不过这不是老模块,所以不用管老包怎么导入,反正现在用不上。也可以把import wx 改成:from wx import *,这样,程序就可以省略前缀wx.,直接以App()方式调用。
接下下,定义一个自己的App(),MyApp并没有重写__iinit__()方法,而是由父类调用,如果要重写__init__()方法,一定要记住显示调用父类的__init__方法:wx.App.__init__(self) 不然,OnInit()方法不会生效。由此可推出:OnInit()方法是由父类的__init__方法调用的
最后进入消息循环,响应各种事件。
下一篇:稍稍扩展