Python创建普通菜单示例【基于win32ui模块】


Posted in Python onMay 09, 2018

本文实例讲述了Python创建普通菜单的方法。分享给大家供大家参考,具体如下:

一、代码

# -*- coding:utf-8 -*-
#! python3
import win32ui
import win32api
from win32con import *
from pywin.mfc import window
class MyWnd(window.Wnd):
  def __init__ (self):
    window.Wnd.__init__(self,win32ui.CreateWnd())
    self._obj_.CreateWindowEx(WS_EX_CLIENTEDGE,\
                 win32ui.RegisterWndClass(0,0,COLOR_WINDOW+1),\
                 '3water.com - MFC GUI',WS_OVERLAPPEDWINDOW,\
                 (10,10,800,800),None,0,None)
    submenu = win32ui.CreateMenu()
    menu = win32ui.CreateMenu()
    submenu.AppendMenu(MF_STRING,1051,'&Open')
    submenu.AppendMenu(MF_STRING,1052,'&Close')
    submenu.AppendMenu(MF_STRING,1053,'&Save')
    menu.AppendMenu(MF_STRING|MF_POPUP,submenu.GetHandle(),'&File')
    submenu = win32ui.CreateMenu()
    submenu.AppendMenu(MF_STRING,1054,'&Copy')
    submenu.AppendMenu(MF_STRING,1055,'&Paste')
    submenu.AppendMenu(MF_STRING,1056,None)
    submenu.AppendMenu(MF_STRING,1057,'&Cut')
    menu.AppendMenu(MF_STRING|MF_POPUP,submenu.GetHandle(),'&Edit')
    submenu = win32ui.CreateMenu()
    submenu.AppendMenu(MF_STRING,1058,'Tools')
    submenu.AppendMenu(MF_STRING|MF_GRAYED,1059,'Setting')
    m = win32ui.CreateMenu()
    m.AppendMenu(MF_STRING|MF_POPUP|MF_CHECKED,submenu.GetHandle(),'Option')
    menu.AppendMenu(MF_STRING|MF_POPUP,m.GetHandle(),'&Other')
    self._obj_.SetMenu(menu)
  def OnClose(self):
    self.EndModalLoop(0)
w = MyWnd()
w.ShowWindow()
w.UpdateWindow()
w.RunModalLoop(1)

二、运行效果:

Python创建普通菜单示例【基于win32ui模块】

注:win32ui模块的安装可直接使用pip命令,如下:

pip install pypiwin32

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
python基于urllib实现按照百度音乐分类下载mp3的方法
May 25 Python
详谈Python2.6和Python3.0中对除法操作的异同
Apr 28 Python
Python实现的爬虫功能代码
Jun 24 Python
浅谈flask源码之请求过程
Jul 26 Python
浅谈python下含中文字符串正则表达式的编码问题
Dec 07 Python
pycharm修改界面主题颜色的方法
Jan 17 Python
Python流行ORM框架sqlalchemy安装与使用教程
Jun 04 Python
python将print输出的信息保留到日志文件中
Sep 27 Python
使用Python爬虫库requests发送请求、传递URL参数、定制headers
Jan 25 Python
Java爬虫技术框架之Heritrix框架详解
Jul 22 Python
Ubuntu16安装Python3.9的实现步骤
Dec 15 Python
Python字典和列表性能之间的比较
Jun 07 Python
Python使用Windows API创建窗口示例【基于win32gui模块】
May 09 #Python
Python基于win32ui模块创建弹出式菜单示例
May 09 #Python
numpy中的delete删除数组整行和整列的实例
May 09 #Python
java中两个byte数组实现合并的示例
May 09 #Python
Python 使用PIL numpy 实现拼接图片的示例
May 08 #Python
如何实现删除numpy.array中的行或列
May 08 #Python
numpy实现合并多维矩阵、list的扩展方法
May 08 #Python
You might like
ThinkPHP中U方法的使用浅析
2014/06/13 PHP
Linux下手动编译安装PHP扩展的例子分享
2014/07/15 PHP
PHP图像处理类库及演示分享
2015/05/17 PHP
php使用Jpgraph绘制复杂X-Y坐标图的方法
2015/06/10 PHP
php封装一个异常的处理类
2017/06/08 PHP
Ajax+PHP实现的分类列表框功能示例
2019/02/11 PHP
PHP实现二维数组(或多维数组)转换成一维数组的常见方法总结
2019/12/04 PHP
jquery(live)中File input的change方法只起一次作用的解决办法
2011/10/21 Javascript
jQuery点击弹出下拉菜单的小例子
2013/08/01 Javascript
jquery自定义类似$.ajax()的方法实现代码
2013/08/13 Javascript
js Dialog 去掉右上角的X关闭功能
2014/04/23 Javascript
javascript中定义类的方法详解
2015/02/10 Javascript
jQuery解析Json实例详解
2015/11/24 Javascript
JS实现将数字金额转换为大写人民币汉字的方法
2016/08/02 Javascript
使用node.js中的Buffer类处理二进制数据的方法
2016/11/26 Javascript
ES6 Promise对象的应用实例分析
2019/06/27 Javascript
JS正则表达式验证端口范围(0-65535)
2020/01/06 Javascript
基于JavaScript或jQuery实现网站夜间/高亮模式
2020/05/30 jQuery
python2.7实现FTP文件下载功能
2018/04/15 Python
使用Python实现跳帧截取视频帧
2019/05/31 Python
聊聊python里如何用Borg pattern实现的单例模式
2019/06/06 Python
python实现动态数组的示例代码
2019/07/15 Python
python GUI库图形界面开发之PyQt5状态栏控件QStatusBar详细使用方法实例
2020/02/28 Python
基于Django快速集成Echarts代码示例
2020/12/01 Python
HTML5 在canvas中绘制文本附效果图
2014/06/23 HTML / CSS
英国航空官网:British Airways
2016/09/11 全球购物
北美领先的智能产品购物网站:Wellbots
2018/06/11 全球购物
为女性购买传统的印度服装和婚纱:Kalkifashion
2019/07/22 全球购物
平面设计岗位职责
2013/12/14 职场文书
银行优秀员工事迹材料
2014/05/29 职场文书
幼儿园教师师德师风演讲稿:爱我所爱 无悔青春
2014/09/10 职场文书
2015年度优秀员工自荐书
2015/03/06 职场文书
综合素质评价思想道德自我评价
2015/03/09 职场文书
2015员工年度考核评语
2015/03/25 职场文书
《槐乡的孩子》教学反思
2016/02/20 职场文书
2019年公司卫生管理制度样本
2019/08/21 职场文书