# Demobeispiel_wxFrame.py import wx ### --------------------------------------------------- class MeinPanel(wx.Panel): def __init__(self, parent): wx.Panel.__init__(self, parent, -1) l1 = wx.StaticText(self, -1, "wx.TextCtrl") l1.SetPosition((10,50)) self.tc1 = t1 = wx.TextCtrl(self, -1, "Test it out and see", size=(125, -1)) t1.SetPosition((150,50)) self.Bind(wx.EVT_TEXT, self.EvtText, t1) def EvtText(self, event): ##self.log.WriteText('EvtText: %s\n' % event.GetString()) pass ### --------------------------------------------------- class MyFrame(wx.Frame): def __init__( self, parent, ID, title, pos=wx.DefaultPosition, size=wx.DefaultSize, style=wx.DEFAULT_FRAME_STYLE ): wx.Frame.__init__(self, parent, ID, 'Playing with menus', size=(500, 250)) self.meinPanel = MeinPanel(self) # Prepare the menu bar menuBar = wx.MenuBar() # 1st menu from left menu1 = wx.Menu() menu1.Append(101, "&Laden", "") menu1.Append(102, "&Speichern", "") ##menu1.Append(103, "&Earth", "") menu1.AppendSeparator() menu1.Append(104, "&Close", "") # 2nd menu from left menu2 = wx.Menu() menu2.Append(201, "&Stuhl", "") menu2.Append(202, "&Tisch", "") menu2.Append(203, "&Schrank", "") ## menu2.AppendSeparator() ## menu2.Append(204, "&Close", "Close this frame") # Add menu to the menu bar menuBar.Append(menu1, "&Datei") menuBar.Append(menu2, "&Moebel") self.SetMenuBar(menuBar) # Menu events self.Bind(wx.EVT_MENU, self.Menu101, id=101) self.Bind(wx.EVT_MENU, self.Menu102, id=102) ##self.Bind(wx.EVT_MENU, self.Menu103, id=103) self.Bind(wx.EVT_MENU, self.OnCloseWindow, id=104) self.Bind(wx.EVT_MENU, self.Menu201, id=201) self.Bind(wx.EVT_MENU, self.Menu202, id=202) self.Bind(wx.EVT_MENU, self.Menu203, id=203) def Menu101(self, event): self.meinPanel.tc1.SetValue('Laden angeklickt') def Menu102(self, event): self.meinPanel.tc1.SetValue('Speichern angeklickt') ## def Menu103(self, event): ## self.meinPanel.tc1.SetValue('Welcome to the Earth') def Menu201(self, event): self.meinPanel.tc1.SetValue('Stuhl erzeugen') def Menu202(self, event): self.meinPanel.tc1.SetValue('Tisch erzeugen') def Menu203(self, event): self.meinPanel.tc1.SetValue('Schrank erzeugen') def OnCloseWindow(self, event): self.Destroy() ### --------------------------------------------------- class MyApp(wx.App): """Testanwendung fuer Demobeispiel""" def OnInit(self): self.fenster = MyFrame(None, 1000, "Demobeispiel") self.SetTopWindow(self.fenster) self.fenster.Show(True) return True ### --------------------------------------------------- if __name__ == '__main__': app = MyApp(redirect=False) app.MainLoop()