顺序安装以下程序:

  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. Scrolliview

    package com.example.scrollview; import android.os.Bundle;import android.app.Activity;import android. ...

  2. HTTP Code

    所有 HTTP 状态代码及其定义. 代码  指示  2xx  成功  200  正常:请求已完成.  201  正常:紧接 POST 命令.  202  正常:已接受用于处理,但处理尚未完成.  20 ...

  3. Immutable 详解

    Shared mutable state is the root of all evil(共享的可变状态是万恶之源) -- Pete Hunt 有人说 Immutable 可以给 React 应用带来 ...

  4. Adb工具配置和设备连接

    ADB全程Android Debug Bridge,是Android SDK里的一个工具,用这个工具可以直接操作管理Android模拟器或者真实的Android设备(如手机). 一.Adb工具使用配置 ...

  5. 基于jQuery的email suggest插件

    最近项目中有表单提交的地方需要用户填写邮箱,PM(产品经理)和运营都强烈要求在用户填写邮箱的时候出现suggest列表,简化用户输入的填写流程.我考虑了下,这个应该也是经常会用到的功能,细心的朋友可能 ...

  6. Contiki学习笔记  第一个程序:Hello World

    想来想去,还是得先写一个程序,找下感觉,增强一下自信心,那就国际惯例Hello World吧.先到这个网址下一个Instant Contiki 2.7.之所以没用3.0的,是因为有些问题,我源码是下的 ...

  7. Python爬虫库Scrapy入门1--爬取当当网商品数据

    1.关于scrapy库的介绍,可以查看其官方文档:http://scrapy-chs.readthedocs.io/zh_CN/latest/ 2.安装:pip install scrapy  注意这 ...

  8. linux yum命令详解-转

    yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器.基於RPM包管理,能够从指定的服务器自动下载RP ...

  9. centos 7 安装zabbix3.0

    1.安装MySQL 从最新版本的linux系统开始,默认的是 Mariadb而不是mysql! 使用系统自带的repos安装很简单: # yum install -y mariadb mariadb- ...

  10. es6 代码片段理解

    代码片段理解: [INCREMENT]: (state, action) => { const { payload: { id } } = action //because payload co ...