]>
git.saurik.com Git - wxWidgets.git/blob - wxPython/samples/simple/simple.py
1 #----------------------------------------------------------------------
2 # A very simple wxPython example. Just a wxFrame, wxPanel,
3 # wxStaticText, wxButton, and a wxBoxSizer, but it shows the basic
4 # structure of any wxPython application.
5 #----------------------------------------------------------------------
10 class MyFrame(wx
.Frame
):
12 This is MyFrame. It just shows a few controls on a wxPanel,
13 and has a simple menu.
15 def __init__(self
, parent
, title
):
16 wx
.Frame
.__init
__(self
, parent
, -1, title
, size
=(350, 200))
19 menuBar
= wx
.MenuBar()
24 # add an item to the menu, using \tKeyName automatically
25 # creates an accelerator, the third param is some help text
26 # that will show up in the statusbar
27 menu
.Append(wx
.ID_EXIT
, "E&xit\tAlt-X", "Exit this simple sample")
29 # bind the menu event to an event handler
30 self
.Bind(wx
.EVT_MENU
, self
.OnTimeToClose
, id=wx
.ID_EXIT
)
32 # and put the menu on the menubar
33 menuBar
.Append(menu
, "&File")
34 self
.SetMenuBar(menuBar
)
36 self
.CreateStatusBar()
39 # Now create the Panel to put the other controls on.
40 panel
= wx
.Panel(self
)
43 text
= wx
.StaticText(panel
, -1, "Hello World!")
44 text
.SetFont(wx
.Font(14, wx
.SWISS
, wx
.NORMAL
, wx
.BOLD
))
45 text
.SetSize(text
.GetBestSize())
46 btn
= wx
.Button(panel
, -1, "Close")
47 funbtn
= wx
.Button(panel
, -1, "Just for fun...")
49 # bind the button events to handlers
50 self
.Bind(wx
.EVT_BUTTON
, self
.OnTimeToClose
, btn
)
51 self
.Bind(wx
.EVT_BUTTON
, self
.OnFunButton
, funbtn
)
53 # Use a sizer to layout the controls, stacked vertically and with
54 # a 10 pixel border around each
55 sizer
= wx
.BoxSizer(wx
.VERTICAL
)
56 sizer
.Add(text
, 0, wx
.ALL
, 10)
57 sizer
.Add(btn
, 0, wx
.ALL
, 10)
58 sizer
.Add(funbtn
, 0, wx
.ALL
, 10)
63 def OnTimeToClose(self
, evt
):
64 """Event handler for the button click."""
68 def OnFunButton(self
, evt
):
69 """Event handler for the button click."""
70 print "Having fun yet?"
73 app
= wx
.PySimpleApp()
74 frame
= MyFrame(None, "Simple wxPython App")