2009-03-09 5 views
7

Che evento viene utilizzato quando chiudo una scheda in un auinotebook? Ho provato con EVT_AUINOTEBOOK_PAGE_CLOSE (D). Non ha funzionato.wxPython auinotebook vicino scheda evento

Vorrei anche di sparare un clic destro sulla scheda evento stesso.

Dove è possibile trovare tutti gli eventi che è possibile utilizzare con il gestore/notebook di aui? Potrebbe essere solo la mia scarsa capacità di ricerca, ma non riesco a trovare nessuna elenca oltre i diversi eventi che esistono, non per gli eventi del mouse/finestra sia. Sarebbe davvero utile avere un elenco completo.

#!/usr/bin/python 

#12_aui_notebook1.py 

import wx 
import wx.lib.inspection 

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.nb.Bind(wx.EVT_AUINOTEBOOK_PAGE_CLOSED, self.close) 

    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.Show() 
     self.SetTopWindow(frame) 
     return 1 

if __name__ == "__main__": 
    app = MyApp(0) 
# wx.lib.inspection.InspectionTool().Show() 
    app.MainLoop() 

Oerjan Pettersen

risposta

8

Questo è il comando bind si desidera:

self.Bind(wx.aui.EVT_AUINOTEBOOK_PAGE_CLOSED, self.close, self.nb) 

Per rilevare un clic destro sulla scheda (ad esempio, per mostrare un menu contestuale personalizzato):

self.Bind(wx.aui.EVT_AUINOTEBOOK_TAB_RIGHT_DOWN, self.right, self.nb) 

Ecco un elenco degli eventi del notebook aui:

EVT_AUINOTEBOOK_PAGE_CLOSE 
EVT_AUINOTEBOOK_PAGE_CLOSED 
EVT_AUINOTEBOOK_PAGE_CHANGED 
EVT_AUINOTEBOOK_PAGE_CHANGING 
EVT_AUINOTEBOOK_BUTTON 
EVT_AUINOTEBOOK_BEGIN_DRAG 
EVT_AUINOTEBOOK_END_DRAG 
EVT_AUINOTEBOOK_DRAG_MOTION 
EVT_AUINOTEBOOK_ALLOW_DND 
EVT_AUINOTEBOOK_DRAG_DONE 
EVT_AUINOTEBOOK_BG_DCLICK 
EVT_AUINOTEBOOK_TAB_MIDDLE_DOWN 
EVT_AUINOTEBOOK_TAB_MIDDLE_UP 
EVT_AUINOTEBOOK_TAB_RIGHT_DOWN 
EVT_AUINOTEBOOK_TAB_RIGHT_UP 

Da: {cartella python}/lib {cartella wxpython}/site-packages//wx/aui.py

+0

Grazie. Sarà molto utile. – Orjanp