Can anyone please tell me why my notebook is not visible?
Thanks in advance!
Klaus
from wxPython.wx import *
#---------------------------------------------------------------------------
## Create a new frame class, derived from the wxPython Frame.
class MyFrame(wxFrame):
def __init__(self, parent, id, title):
# First, call the base class' __init__ method to create the frame
wxFrame.__init__(self, parent, id, title,
wxPoint(100, 100), wxSize(400, 400))
# Create a menu
self.mnu = wxMenuBar()
menu1 = wxMenu()
menu1.Append(wxNewId(), "&Mercury", "This the text in the
Statusbar")
menu1.Append(wxNewId(), "&Venus", "")
menu1.Append(wxNewId(), "&Earth", "You may select Earth too")
menu1.AppendSeparator()
menu1.Append(wxNewId(), "&Close", "Close this frame")
self.mnu.Append(menu1,"&Datei")
self.SetMenuBar(self.mnu)
# Create a toolbar
self.tb = self.CreateToolBar()
# Create a statusbar
self.sb = self.CreateStatusBar()
# Create notebook
nb = wxNotebook(self, -1)
panel1 = wxPanel(nb, -1)
panel2 = wxPanel(nb, -1)
nb.AddPage(panel1, "Panel 1")
nb.AddPage(panel2, "Panel 2")
# Associate some events with methods of this class
EVT_SIZE(self, self.OnSize)
EVT_MOVE(self, self.OnMove)
# This method is called automatically when the CLOSE event is
# sent to this window
def OnCloseWindow(self, event):
# tell the window to kill itself
self.Destroy()
# This method is called by the System when the window is resized,
# because of the association above.
def OnSize(self, event):
size = event.GetSize()
print "size:", size.width, size.height
# This method is called by the System when the window is moved,
# because of the association above.
def OnMove(self, event):
pos = event.GetPosition()
print "pos:", pos.x, pos.y
#class TestNB(wxNotebook):
# def __init__(self, parent, id):
# wxNotebook.__init__(self, parent, id, style=
# #wxNB_TOP
# wxNB_BOTTOM
# #wxNB_LEFT
# #wxNB_RIGHT
# )
#---------------------------------------------------------------------------
# Every wxWindows application must have a class derived from wxApp
class MyApp(wxApp):
# wxWindows calls this method to initialize the application
def OnInit(self):
# Create an instance of our customized Frame class
frame = MyFrame(NULL, -1, "This is a test")
frame.Show(true)
# Tell wxWindows that this is our main window
self.SetTopWindow(frame)
# Return a success flag
return true
#---------------------------------------------------------------------------
app = MyApp(0) # Create an instance of the application class
app.MainLoop() # Tell it to start processing events
#---------------------------------------------------------------------------
-