wxpython中父窗口参数设定为self的含义是什么?


就例如代码段

   
  import wx
  
class InsertFrame(wx.Frame):
def __init__(self, parent, id):
wx.Frame.__init__(self, parent, id, 'Frame With Button',
size=(300, 100))
panel = wx.Panel(self) #创建画板
button = wx.Button(panel, label="Close", pos=(125, 10),
size=(50, 50)) #将按钮添加到画板
#绑定按钮的单击事件
self.Bind(wx.EVT_BUTTON, self.OnCloseMe, button)
#绑定窗口的关闭事件
self.Bind(wx.EVT_CLOSE, self.OnCloseWindow)
def OnCloseMe(self, event):
self.Close(True)
def OnCloseWindow(self, event):
self.Destroy()
if __name__ == '__main__':
app = wx.PySimpleApp()
frame = InsertFrame(parent=None, id=-1)
frame.Show()
app.MainLoop()

为什么创建的panel会自动添加到frame中选择frame为父窗口,并且这个panel中self参数表示什么意思?

python

金牌打爆机 12 years, 4 months ago

self就是C++里面的this指针,这个参数是可以省略的,例如,frame的构造器也可以这么写

   
  wx.Frame(parent, id=-1, title="", pos=wx.DefaultPosition,
  
size=wx.DefaultSize, style=wx.DEFAULT_FRAME_STYLE,
name="frame")

495年的波紋 answered 12 years, 4 months ago

Your Answer