X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/5444f3a9445fe30633aef827154ed57656273a35..90805926b75bcdc8466b1736df4413c7581cdc30:/wxPython/docs/wxPackage.html?ds=sidebyside diff --git a/wxPython/docs/wxPackage.html b/wxPython/docs/wxPackage.html index fb8cbb71e8..e6c1ee9d01 100644 --- a/wxPython/docs/wxPackage.html +++ b/wxPython/docs/wxPackage.html @@ -163,15 +163,101 @@ replace.

Where can I find example programs using the new wx syntax?

-

Example programs are included in the wxPython/samples/wx_examples -directory, and are documented in the wxPythonExamples documentation -file. Also, all the code in the py package uses the new wx syntax. -You can learn more about these in the PyManual.

+

The wxPython demo application and most of the sample apps have been +converted to use the new import wx style of programming with +wxPython, so there are lots of examples to look at and to play with. +Here is one of them, it is the simple sample.

+
+#----------------------------------------------------------------------
+# A very simple wxPython example.  Just a wxFrame, wxPanel,
+# wxStaticText, wxButton, and a wxBoxSizer, but it shows the basic
+# structure of any wxPython application.
+#----------------------------------------------------------------------
+
+import wx
+
+
+class MyFrame(wx.Frame):
+    """
+    This is MyFrame.  It just shows a few controls on a wxPanel,
+    and has a simple menu.
+    """
+    def __init__(self, parent, title):
+        wx.Frame.__init__(self, parent, -1, title,
+                          pos=(150, 150), size=(350, 200))
+
+        # Create the menubar
+        menuBar = wx.MenuBar()
+
+        # and a menu 
+        menu = wx.Menu()
+
+        # add an item to the menu, using \tKeyName automatically
+        # creates an accelerator, the third param is some help text
+        # that will show up in the statusbar
+        menu.Append(wx.ID_EXIT, "E&xit\tAlt-X", "Exit this simple sample")
+
+        # bind the menu event to an event handler
+        self.Bind(wx.EVT_MENU, self.OnTimeToClose, id=wx.ID_EXIT)
+
+        # and put the menu on the menubar
+        menuBar.Append(menu, "&File")
+        self.SetMenuBar(menuBar)
+
+        self.CreateStatusBar()
+        
+
+        # Now create the Panel to put the other controls on.
+        panel = wx.Panel(self)
+
+        # and a few controls
+        text = wx.StaticText(panel, -1, "Hello World!")
+        text.SetFont(wx.Font(14, wx.SWISS, wx.NORMAL, wx.BOLD))
+        text.SetSize(text.GetBestSize())
+        btn = wx.Button(panel, -1, "Close")
+        funbtn = wx.Button(panel, -1, "Just for fun...")
+
+        # bind the button events to handlers
+        self.Bind(wx.EVT_BUTTON, self.OnTimeToClose, btn)
+        self.Bind(wx.EVT_BUTTON, self.OnFunButton, funbtn)
+
+        # Use a sizer to layout the controls, stacked vertically and with
+        # a 10 pixel border around each
+        sizer = wx.BoxSizer(wx.VERTICAL)
+        sizer.Add(text, 0, wx.ALL, 10)
+        sizer.Add(btn, 0, wx.ALL, 10)
+        sizer.Add(funbtn, 0, wx.ALL, 10)
+        panel.SetSizer(sizer)
+        panel.Layout()
+
+
+    def OnTimeToClose(self, evt):
+        """Event handler for the button click."""
+        print "See ya later!"
+        self.Close()
+
+    def OnFunButton(self, evt):
+        """Event handler for the button click."""
+        print "Having fun yet?"
+
+
+class MyApp(wx.App):
+    def OnInit(self):
+        frame = MyFrame(None, "Simple wxPython App")
+        frame.Show(True)
+        self.SetTopWindow(frame)
+        return True
+        
+app = MyApp(True)
+app.MainLoop()
+
+
+