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	Ctrl+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	Ctrl+O','Open File')
        mnuFile.AppendSeparator()
        quit=wx.MenuItem(mnuFile,105,'&Quit	Ctrl+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	Ctrl+O','Open File')
        mnuFile.AppendSeparator()
        quit=wx.MenuItem(mnuFile,105,'&Quit	Ctrl+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	Ctrl+O','Open File')
        mnuFile.AppendSeparator()
        mnuFile.Append(105,'&Quit	Ctrl+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()  # 进入这个应用程序的主事件循环
原文地址:https://www.cnblogs.com/flaaash/p/5299597.html