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使用心得之获得github代码库列表
Jun 25 Python
python 捕获 shell/bash 脚本的输出结果实例
Jan 04 Python
python虚拟环境的安装配置图文教程
Oct 20 Python
python 判断网络连通的实现方法
Apr 22 Python
django利用request id便于定位及给日志加上request_id
Aug 26 Python
python高级特性和高阶函数及使用详解
Oct 17 Python
详解Python_shutil模块
Mar 15 Python
Python基于Dlib的人脸识别系统的实现
Feb 26 Python
opencv 阈值分割的具体使用
Jul 08 Python
Python 实现微信自动回复的方法
Sep 11 Python
Anaconda使用IDLE的实现示例
Sep 23 Python
实战Python爬虫爬取酷我音乐
Apr 11 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
PHP小教程之实现链表
2014/06/09 PHP
使用PHP实现下载CSS文件中的图片
2015/12/06 PHP
PHP编写的图片验证码类文件分享
2016/06/06 PHP
php删除txt文件指定行及按行读取txt文档数据的方法
2017/01/30 PHP
php处理抢购类功能的高并发请求
2018/02/08 PHP
Laravel Validator自定义错误返回提示消息并在前端展示
2019/05/09 PHP
jquery CSS选择器笔记
2010/03/29 Javascript
js中更短的 Array 类型转换
2011/10/30 Javascript
jquery如何通过name名称获取当前name的value值
2013/12/20 Javascript
jQuery原生的动画效果
2015/07/10 Javascript
jQuery实现Email邮箱地址自动补全功能代码
2015/11/03 Javascript
Bootstrap3.0学习教程之JS折叠插件
2016/05/27 Javascript
JS JSOP跨域请求实例详解
2016/07/04 Javascript
JS获取鼠标相对位置的方法
2016/09/20 Javascript
connection reset by peer问题总结及解决方案
2016/10/21 Javascript
Ztree新增角色和编辑角色回显问题的解决
2016/10/25 Javascript
微信小程序搜索组件wxSearch实例详解
2017/06/08 Javascript
Angular浏览器插件Batarang介绍及使用
2018/02/07 Javascript
详解javascript replace高级用法
2019/02/17 Javascript
Vue中的循环及修改差值表达式的方法
2019/08/29 Javascript
python实现监控windows服务并自动启动服务示例
2014/04/17 Python
Python实现的彩票机选器实例
2015/06/17 Python
Python实现导出数据生成excel报表的方法示例
2017/07/12 Python
[原创]python爬虫(入门教程、视频教程)
2018/01/08 Python
Python基于FTP模块实现ftp文件上传操作示例
2018/04/23 Python
python线程中同步锁详解
2018/04/27 Python
pyQT5 实现窗体之间传值的示例
2019/06/20 Python
Python闭包装饰器使用方法汇总
2020/06/29 Python
美国零售商店:Blue&Cream
2017/04/07 全球购物
俄罗斯皮肤健康中心:Pharmacosmetica.ru
2020/02/22 全球购物
军训考核自我鉴定
2014/02/13 职场文书
团队队名口号大全
2014/06/06 职场文书
会计工作岗位职责
2015/02/03 职场文书
2016新春团拜会致辞
2015/08/01 职场文书
网络研修心得体会
2016/01/08 职场文书
Python 匹配文本并在其上一行追加文本
2022/05/11 Python