37,721
社区成员
发帖
与我相关
我的任务
分享
import wx
import wx.aui
class MyFrame(wx.Frame):
def __init__(self, *args, **kwds):
wx.Frame.__init__(self, *args, **kwds)
self.nb = wx.aui.AuiNotebook(self,size=(500,100),style=1)
self.new_panel1('Page 1')
self.new_panel2('Page 2')
def new_panel1(self, nm):
pnl = wx.Panel(self)
pnl.identifierTag = nm
self.nb.AddPage(pnl, nm)
self.btn = wx.Button(self,-1,'Preview',pos=(200,230))
self.Bind(wx.EVT_BUTTON,self.OnChange,self.btn)
def new_panel2(self, nm):
pnl = wx.Panel(self)
pnl.identifierTag = nm
self.nb.AddPage(pnl, nm)
def OnChange(self,event):
self.button.SetLabel('Clicked')
class MyApp(wx.App):
def OnInit(self):
frame = MyFrame(None, -1, '12_aui_notebook1.py',size=(620,500))
frame.Bind(wx.EVT_CLOSE, self.OnCloseWindow, frame)
frame.Show()
self.SetTopWindow(frame)
self.frame = frame
return 1
def OnCloseWindow(self,event):
dlg = wx.MessageDialog(None,'Exit , Are you sure ?', 'Confirmation',wx.YES_NO|wx.ICON_QUESTION)
retCode = dlg.ShowModal()
if(retCode == wx.ID_YES):
self.frame.Destroy()
else:
pass
if __name__ == "__main__":
app = MyApp(0)
#wx.lib.inspection.InspectionTool().Show()
app.MainLoop()
import wx
import wx.aui
class MyFrame(wx.Frame):
def __init__(self, *args, **kwds):
wx.Frame.__init__(self, *args, **kwds)
self.nb = wx.aui.AuiNotebook(self)
self.new_panel('Page 1')
self.new_panel('Page 2')
self.new_panel('Page 3')
self.Bind(wx.aui.EVT_AUINOTEBOOK_PAGE_CLOSED, self.close, self.nb)
def new_panel(self, nm):
pnl = wx.Panel(self)
pnl.identifierTag = nm
self.nb.AddPage(pnl, nm)
self.sizer = wx.BoxSizer()
self.sizer.Add(self.nb, 1, wx.EXPAND)
self.SetSizer(self.sizer)
def close(self, event):
print 'closed'
class MyApp(wx.App):
def OnInit(self):
frame = MyFrame(None, -1, '12_aui_notebook1.py')
frame.Bind(wx.EVT_CLOSE, self.OnCloseWindow, frame)
frame.Show()
self.SetTopWindow(frame)
self.frame = frame
return 1
def OnCloseWindow(self,event):
dlg = wx.MessageDialog(None,'Exit , Are you sure ?', 'Confirmation',wx.YES_NO|wx.ICON_QUESTION)
retCode = dlg.ShowModal()
if(retCode == wx.ID_YES):
self.frame.Show(False)
else:
pass
if __name__ == "__main__":
app = MyApp(0)
# wx.lib.inspection.InspectionTool().Show()
app.MainLoop()