顺序安装以下程序:

  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() # 进入这个应用程序的主事件循环

Python体验(07)-图形界面之菜单的更多相关文章

  1. Python体验(08)-图形界面之工具栏和状态栏

    # coding=utf-8 import wx # 导入必须的Python包 class MenuForm(wx.Frame): def OnQuit(self,event): self.Close ...

  2. Python体验(10)-图形界面之计算器

    import wx class Form(wx.Frame): def __init__( self, parent, id, title ): wx.Frame.__init__(self,pare ...

  3. 用aardio给python写个图形界面

    前阵子在用python写一些小程序,写完后就开始思考怎么给python程序配一个图形界面,毕竟控制台实在太丑陋了. 于是百度了下python的图形界面库,眼花缭乱的一整页,拣了几件有“特色”有“噱头” ...

  4. 【Python】 用户图形界面GUI wxpython IV 菜单&对话框

    更多组件 ■ 菜单栏 Menu 菜单是很多GUI必不可少的一部分.要建立菜单,必须先创建菜单栏: menuBar = MenuBar() menu = Menu() item1 = menu.Appe ...

  5. 【Python】 用户图形界面GUI wxpython III 更多组件

    wxpython - 更多组件 我写到的这些组件可能一来不是很详细,二来不是最全的,想要更好地用这些组件,应该还是去看看教程和别的示例.比较简单的,推荐http://download.csdn.net ...

  6. 【Python】 用户图形界面GUI wxpython II 布局和事件

    wxpython - 布局和事件 这章主要记录布局器Sizer以及事件的用法. // 目前还需要记录的:Sizer的Add方法加空白,Sizer的Layout,Sizer的Remove如何有效 ■ 布 ...

  7. 【Python】 用户图形界面GUI wxpython I 基本用法和组件

    wxpython - 基本用法和组件 wxpython是python对跨平台GUI库wxWidgets的封装.wxWidgets是由C++写成的. wxpython被包装进了wx模块中,用它设计GUI ...

  8. python学习之图形界面编程:

    一 tkinter:tkinter是python自带的支持tk的库,python代码调用tkinter->tk->操作系统提供的本地GUI(TKL语言开发))完成界面开发,不需要安装任何第 ...

  9. Python 的简单图形界面编程【草】

    可用方案 Tkinter python官方附带,方便,但听说存在乱码问题 wxPython 更成熟一些,但需要额外安装(大约50M) pyQt 授权不够宽松 最短代码 Tkinter 待补充 wxPy ...

随机推荐

  1. 安装Nginx的Dockerfile实例

    #################################################Dockerfile to build Nginx Installed Containers##Bas ...

  2. iptables的扩展匹配

    iptables的匹配条件 一.通用匹配:-s.-d.-p.-i.-o 二.扩展匹配 1.隐含扩展:使用-p{tcp|udp|icmp}指定某特定协议后,自动能够对协议进行扩展 -p tcp --dp ...

  3. #ifndef 的用法

    背景: 头件的中的#ifndef,这是一个很关键的东西.比如你有两个C文件,这两个C文件都include了同一个头文件.而编译时,这两个C文件要一同编译成一个可运行文件,会引起大量的声明冲突,这时候需 ...

  4. ubuntu 一些命令

    打开终端 ctrl+alt+t 关闭中端 ctrl+shift+q 打开ppt openoffice.org -g xx.ppt &

  5. 解决Eclipse中文乱码 - 技术博客 - 51CTO技术博客 http://hsj69106.blog.51cto.com/1017401/595598/

    解决Eclipse中文乱码 - 技术博客 - 51CTO技术博客  http://hsj69106.blog.51cto.com/1017401/595598/

  6. c#大数加法

    在C#中,我们经常需要表示整数.但是,c#的基本数据类型中,最大的long也只能表示-9,223,372,036,854,775,808 到 9,223,372,036,854,775,807之间的数 ...

  7. 使用RXTX获取电脑串口

    RXTX是javacomm串口通信的一个扩展 RXTX开发所需文件的下载地址:http://rxtx.qbang.org/wiki/index.php/Download 解压之后可以看到支持各个平台的 ...

  8. C 语言中的优先级

    先看一段代码: /********************************************************************* * @fn bdAddr2Str * * ...

  9. android dialog 有关token的问题

    android中的dialog显示一般是显示在宿主context里面,但context有几种模式,我今天遇到问题就是在BroadcastReceiver广播里面构造对话框后显示出现的问题:androi ...

  10. linq group by子句

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...