2001-11-09 23:19:16 +00:00
|
|
|
|
|
|
|
#----------------------------------------------------------------------
|
|
|
|
# A very simple wxPython example. Just a wxFrame, wxPanel,
|
|
|
|
# wxStaticText, wxButton, and a wxBoxSizer, but it shows the basic
|
|
|
|
# structure of any wxPython application.
|
|
|
|
#----------------------------------------------------------------------
|
|
|
|
|
|
|
|
from wxPython.wx import *
|
|
|
|
|
|
|
|
class MyFrame(wxFrame):
|
2002-01-05 23:45:33 +00:00
|
|
|
"""
|
|
|
|
This is MyFrame. It just shows a few controls on a wxPanel,
|
|
|
|
and has a simple menu.
|
|
|
|
"""
|
2001-11-09 23:19:16 +00:00
|
|
|
def __init__(self, parent, title):
|
|
|
|
wxFrame.__init__(self, parent, -1, title, size=(350, 200))
|
|
|
|
|
|
|
|
menuBar = wxMenuBar()
|
|
|
|
menu = wxMenu()
|
|
|
|
menu.Append(101, "E&xit\tAlt-X", "Exit demo")
|
|
|
|
EVT_MENU(self, 101, self.OnButton)
|
|
|
|
menuBar.Append(menu, "&File")
|
|
|
|
self.SetMenuBar(menuBar)
|
|
|
|
|
|
|
|
panel = wxPanel(self, -1)
|
2001-11-20 02:31:27 +00:00
|
|
|
if wxPlatform == "__WXMAC__":
|
2002-01-05 23:45:33 +00:00
|
|
|
text = wxStaticText(panel, -1,
|
|
|
|
"Hello World!\nWhere is my menu?")
|
2001-11-20 02:31:27 +00:00
|
|
|
else:
|
|
|
|
text = wxStaticText(panel, -1, "Hello World!")
|
2001-11-09 23:19:16 +00:00
|
|
|
text.SetFont(wxFont(12, wxSWISS, wxNORMAL, wxBOLD))
|
|
|
|
text.SetSize(text.GetBestSize())
|
|
|
|
btn = wxButton(panel, -1, "Close")
|
|
|
|
btn.SetDefault()
|
|
|
|
|
|
|
|
sizer = wxBoxSizer(wxVERTICAL)
|
|
|
|
sizer.Add(text, 0, wxALL, 10)
|
|
|
|
sizer.Add(btn, 0, wxALL, 10)
|
|
|
|
panel.SetSizer(sizer)
|
|
|
|
panel.SetAutoLayout(true)
|
|
|
|
panel.Layout()
|
|
|
|
|
|
|
|
EVT_BUTTON(self, btn.GetId(), self.OnButton)
|
|
|
|
|
|
|
|
|
|
|
|
def OnButton(self, evt):
|
2002-01-05 23:45:33 +00:00
|
|
|
"""Event handler for the button click."""
|
2001-12-19 21:25:11 +00:00
|
|
|
print "OnButton"
|
2001-11-09 23:19:16 +00:00
|
|
|
self.Close()
|
|
|
|
|
|
|
|
app = wxPySimpleApp()
|
|
|
|
frame = MyFrame(None, "Simple wxPython App")
|
|
|
|
frame.Show(true)
|
|
|
|
app.MainLoop()
|
|
|
|
|