This article mainly introduces the windows GUI program based on wxpython. The example analyzes the implementation skills of the windowsGUI program. if you need it, refer to the following example to describe the windows GUI program based on wxpython. Share it with you for your reference. The details are as follows:
# using a wx.Frame, wx.MenuBar, wx.Menu, wx.Panel, wx.StaticText, wx.Button, # and a wx.BoxSizer to show a rudimentary wxPython Windows GUI application# wxPython package from: http://prdownloads.sourceforge.net/wxpython/# I downloaded: wxPython2.5-win32-ansi-2.5.3.1-py23.exe# if you have not already done so install the Python compiler first# I used Python-2.3.4.exe (the Windows installer package for Python23) # from http://www.python.org/2.3.4/# tested with Python23 vegaseat 24jan2005import wxclass Frame1(wx.Frame): # create a simple windows frame (sometimes called form) # pos=(ulcX,ulcY) size=(width,height) in pixels def __init__(self, parent, title): wx.Frame.__init__(self, parent, -1, title, pos=(150, 150), size=(350, 250)) # create a menubar at the top of the user frame menuBar = wx.MenuBar() # create a menu ... menu = wx.Menu() # ... add an item to the menu # \tAlt-X creates an accelerator for Exit (Alt + x keys) # the third parameter is an optional hint that shows up in # the statusbar when the cursor moves across this menu item menu.Append(wx.ID_EXIT, "E&xit\tAlt-X", "Exit the program") # bind the menu event to an event handler, share QuitBtn event self.Bind(wx.EVT_MENU, self.OnQuitButton, id=wx.ID_EXIT) # put the menu on the menubar menuBar.Append(menu, "&File") self.SetMenuBar(menuBar) # create a status bar at the bottom of the frame self.CreateStatusBar() # now create a panel (between menubar and statusbar) ... panel = wx.Panel(self) # ... put some controls on the panel text = wx.StaticText(panel, -1, "Hello World!") text.SetFont(wx.Font(24, wx.SCRIPT, wx.NORMAL, wx.BOLD)) text.SetSize(text.GetBestSize()) quitBtn = wx.Button(panel, -1, "Quit") messBtn = wx.Button(panel, -1, "Message") # bind the button events to event handlers self.Bind(wx.EVT_BUTTON, self.OnQuitButton, quitBtn) self.Bind(wx.EVT_BUTTON, self.OnMessButton, messBtn) # use a sizer to layout the controls, stacked vertically # with a 10 pixel border around each sizer = wx.BoxSizer(wx.VERTICAL) sizer.Add(text, 0, wx.ALL, 10) sizer.Add(quitBtn, 0, wx.ALL, 10) sizer.Add(messBtn, 0, wx.ALL, 10) panel.SetSizer(sizer) panel.Layout() def OnQuitButton(self, evt): # event handler for the Quit button click or Exit menu item print "See you later alligator! (goes to stdout window)" wx.Sleep(1) # 1 second to look at message self.Close() def OnMessButton(self, evt): # event handler for the Message button click self.SetStatusText('101 Different Ways to Spell "Spam"')class wxPyApp(wx.App): def OnInit(self): # set the title too frame = Frame1(None, "wxPython GUI 2") self.SetTopWindow(frame) frame.Show(True) return True# get it going ...app = wxPyApp(redirect=True)app.MainLoop()
I hope this article will help you with Python programming.