Python体验(07)-图形界面之菜单
顺序安装以下程序:
- python解释器:https://www.python.org/downloads/
- wxPython图形界面框架包:http://www.wxpython.org/
- pycharm编辑器:http://www.jetbrains.com/
# coding=utf-8 import wx # 导入必须的Python包 class App(wx.App): # 子类化wxPython应用程序类 def OnInit(self): # 定义一个应用程序的初始化方法 frame = wx.Frame(parent=None, title='GUI APP') frame.Show() return True app = App() # 创建一个应用程序类的实例 app.MainLoop() # 进入这个应用程序的主事件循环
# coding=utf-8 import wx # 导入必须的Python包 class myMenu(wx.Frame): def __init__(self,parent,id,title): wx.Frame.__init__(self,parent,-1,title,wx.DefaultPosition,wx.Size(100,150)) mnuFile=wx.Menu() mnuFile.AppendSeparator() mnuFile.Append(101,'&About','About Phoenix') quit=wx.MenuItem(mnuFile,105,'&Quit\tCtrl+Q','Quit Application') mnuFile.AppendItem(quit) menubar = wx.MenuBar() menubar.Append(mnuFile,'&File') self.SetMenuBar(menubar) class App(wx.App): # 子类化wxPython应用程序类 def OnInit(self): # 定义一个应用程序的初始化方法 frame =myMenu(None,-1,"GUI With Menu") frame.Show(True) return True app = App() # 创建一个应用程序类的实例 app.MainLoop() # 进入这个应用程序的主事件循环
# coding=utf-8 import wx # 导入必须的Python包 class App(wx.App): # 子类化wxPython应用程序类 def OnInit(self): # 定义一个应用程序的初始化方法 #mnuFile mnuFile=wx.Menu() mnuFile.Append(100,'&Open\tCtrl+O','Open File') mnuFile.AppendSeparator() quit=wx.MenuItem(mnuFile,105,'&Quit\tCtrl+Q','Quit Application') mnuFile.AppendItem(quit) #mnuHelp mnuHelp=wx.Menu() mnuHelp.Append(101,'&About','About Phoenix') #menuBar menuBar = wx.MenuBar() menuBar.Append(mnuFile,'&File') menuBar.Append(mnuHelp,"&Help") #frame frame = wx.Frame(parent=None,title="GUI with Menu") frame.SetMenuBar(menuBar) frame.Show(True) return True app = App() # 创建一个应用程序类的实例 app.MainLoop() # 进入这个应用程序的主事件循环
# coding=utf-8 import wx # 导入必须的Python包 class App(wx.App): # 子类化wxPython应用程序类 def OnInit(self): # 定义一个应用程序的初始化方法 #mnuFile mnuFile=wx.Menu() mnuFile.Append(100,'&Open\tCtrl+O','Open File') mnuFile.AppendSeparator() quit=wx.MenuItem(mnuFile,105,'&Quit\tCtrl+Q','Quit Application') mnuFile.AppendItem(quit) #mnuHelp mnuHelp=wx.Menu() mnuHelp.Append(101,'&About','About Phoenix') #mnuEdit: subMenuCheck subMenuRadio subMenuCheck = wx.Menu() # 创建子菜单 subMenuCheck.Append(2001,'Check Item1',kind=wx.ITEM_CHECK) subMenuCheck.Append(2002,'Check Item2',kind=wx.ITEM_CHECK) subMenuRadio = wx.Menu() subMenuRadio.Append(2004,'Radio Item1',kind=wx.ITEM_RADIO) subMenuRadio.Append(2005,'Radio Item2',kind=wx.ITEM_RADIO) mnuEdit=wx.Menu() mnuEdit.AppendMenu(201,'Check Menu',subMenuCheck) mnuEdit.AppendSeparator() mnuEdit.AppendMenu(203,'Radio Menu',subMenuRadio) #menuBar menuBar = wx.MenuBar() menuBar.Append(mnuFile,'&File') menuBar.Append(mnuEdit, '&Edit') menuBar.Append(mnuHelp,"&Help") #frame frame = wx.Frame(parent=None,title="GUI with Menu") frame.SetMenuBar(menuBar) frame.Show(True) return True app = App() # 创建一个应用程序类的实例 app.MainLoop() # 进入这个应用程序的主事件循环
# coding=utf-8 import wx # 导入必须的Python包 class MenuForm(wx.Frame): def OnQuit(self,event): self.Close() def __init__(self,parent,ID,title): wx.Frame.__init__(self,parent,ID,title) #mnuFile mnuFile=wx.Menu() mnuFile.Append(100,'&Open\tCtrl+O','Open File') mnuFile.AppendSeparator() mnuFile.Append(105,'&Quit\tCtrl+Q','Quit Application') #EVT_MENU wx.EVT_MENU(self,105,self.OnQuit) #menuBar menuBar = wx.MenuBar() menuBar.Append(mnuFile,"&File") self.SetMenuBar(menuBar) self.Centre() class App(wx.App): # 子类化wxPython应用程序类 def OnInit(self): # 定义一个应用程序的初始化方法 frame = MenuForm(parent=None,ID=-1,title="GUI with Menu") frame.Show(True) return True app = App() # 创建一个应用程序类的实例 app.MainLoop() # 进入这个应用程序的主事件循环