我不知道何时何地使用 wx.App 和 PySimpleApp
就像两个代码:
#!/usr/bin/env python
import wx
import wx.py.images as images
class ToolbarFrame(wx.Frame):
def __init__(self, parent, id):
wx.Frame.__init__(self, parent, id, 'Toolbars',
size=(300, 200))
panel = wx.Panel(self)
panel.SetBackgroundColour('White')
class App(wx.App):
def OnInit(self):
frame = ToolbarFrame(parent=None, id=-1)
frame.Show()
return True
if __name__ == '__main__':
app = App()
app.MainLoop()
Run Code Online (Sandbox Code Playgroud)
和这段代码:
#!/usr/bin/env python
import wx
class ToolbarFrame(wx.Frame):
def __init__(self, parent, id):
wx.Frame.__init__(self, parent, id, 'Toolbars',
size=(300, 200))
panel = wx.Panel(self)
panel.SetBackgroundColour('White')
if __name__ == '__main__':
app = wx.PySimpleApp()
frame = ToolbarFrame(parent=None, id=-1)
frame.Show()
app.MainLoop()
Run Code Online (Sandbox Code Playgroud)
有什么区别吗?其他小部件的另一个问题是在 wx.Frame() 或 wx.App() 之类的按钮。
如今,这两个类别之间几乎没有区别。
当 wxPython 项目启动时,wx.PySimpleApp有wx.App不同的行为(后者更底层并且没有定义默认OnInit方法,而PySimpleApp类可以只是实例化并用来完成工作)。此外,某些 wxPython 版本具有wx.App默认OnInit定义的类,但默认情况下不会调用wx.InitAllImageHandlers。
现在wx.PySimpleApp保留在 API 中主要是出于兼容性的原因,并且两个类之间没有区别。
| 归档时间: |
|
| 查看次数: |
4152 次 |
| 最近记录: |