Python体验(07)-图形界面之菜单

时间:2023-03-09 15:47:03
Python体验(07)-图形界面之菜单

顺序安装以下程序:

  1. python解释器:https://www.python.org/downloads/
  2. wxPython图形界面框架包:http://www.wxpython.org/
  3. 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() # 进入这个应用程序的主事件循环