]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/samples/wxPIA_book/Chapter-10/add_items.py
Added the sample code from wxPython In Action to the samples dir
[wxWidgets.git] / wxPython / samples / wxPIA_book / Chapter-10 / add_items.py
diff --git a/wxPython/samples/wxPIA_book/Chapter-10/add_items.py b/wxPython/samples/wxPIA_book/Chapter-10/add_items.py
new file mode 100644 (file)
index 0000000..2c5efe6
--- /dev/null
@@ -0,0 +1,50 @@
+import wx
+
+class MyFrame(wx.Frame):
+    def __init__(self):
+        wx.Frame.__init__(self, None, -1,
+                          "Add Menu Items")
+        p = wx.Panel(self)
+        self.txt = wx.TextCtrl(p, -1, "new item")
+        btn = wx.Button(p, -1, "Add Menu Item")
+        self.Bind(wx.EVT_BUTTON, self.OnAddItem, btn)
+
+        sizer = wx.BoxSizer(wx.HORIZONTAL)
+        sizer.Add(self.txt, 0, wx.ALL, 20)
+        sizer.Add(btn, 0, wx.TOP|wx.RIGHT, 20)
+        p.SetSizer(sizer)
+        
+        self.menu = menu = wx.Menu()
+        simple = menu.Append(-1, "Simple menu item")
+        menu.AppendSeparator()
+        exit = menu.Append(-1, "Exit")
+        self.Bind(wx.EVT_MENU, self.OnSimple, simple)
+        self.Bind(wx.EVT_MENU, self.OnExit, exit)
+                   
+        menuBar = wx.MenuBar()
+        menuBar.Append(menu, "Menu")
+        self.SetMenuBar(menuBar)
+
+       
+    def OnSimple(self, event):
+        wx.MessageBox("You selected the simple menu item")
+
+    def OnExit(self, event):
+        self.Close()
+
+    def OnAddItem(self, event):
+        item = self.menu.Append(-1, self.txt.GetValue())
+        self.Bind(wx.EVT_MENU, self.OnNewItemSelected, item)
+
+    def OnNewItemSelected(self, event):
+        wx.MessageBox("You selected a new item")
+        
+    
+
+if __name__ == "__main__":
+    app = wx.PySimpleApp()
+    frame = MyFrame()
+    frame.Show()
+    app.MainLoop()
+
+