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,500),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')
    self._obj_.SetMenu(menu)
    self.HookCommand(self.MenuClick,1051)
    self.HookCommand(self.MenuClick,1052)
    self.HookCommand(self.MenuClick,1053)
  def OnClose(self):
    self.EndModalLoop(0)
  def MenuClick(self,lParam,wParam):
    if lParam == 1051:
      self.MessageBox('Open','Python',MB_OK)
    elif lParam == 1053:
      self.MessageBox('Sava','python',MB_OK)
    else:
      self.OnClose()
w = MyWnd()
w.ShowWindow()
w.UpdateWindow()
w.RunModalLoop(1)

二、运行效果:

Python处理菜单消息操作示例【基于win32ui模块】

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

pip install pypiwin32

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

Python 相关文章推荐
Python中使用插入排序算法的简单分析与代码示例
May 04 Python
读取json格式为DataFrame(可转为.csv)的实例讲解
Jun 05 Python
pandas筛选某列出现编码错误的解决方法
Nov 07 Python
python 实现倒排索引的方法
Dec 25 Python
python 画二维、三维点之间的线段实现方法
Jul 07 Python
Python 实现输入任意多个数,并计算其平均值的例子
Jul 16 Python
python+openCV调用摄像头拍摄和处理图片的实现
Aug 06 Python
opencv实现简单人脸识别
Feb 19 Python
Python如何使用正则表达式爬取京东商品信息
Jun 01 Python
如何理解python对象
Jun 21 Python
如何使用python socket模块实现简单的文件下载
Sep 04 Python
Python实现日志实时监测的示例详解
Apr 06 Python
Python创建普通菜单示例【基于win32ui模块】
May 09 #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
You might like
DOM XPATH获取img src值的query
2013/09/23 PHP
一个完整的php文件上传类实例讲解
2015/10/27 PHP
PHP面向对象程序设计高级特性详解(接口,继承,抽象类,析构,克隆等)
2016/12/02 PHP
利用php生成验证码
2017/02/23 PHP
Javascript之文件操作
2007/03/07 Javascript
简单的邮箱登陆的提示效果类似于yahoo邮箱
2014/02/26 Javascript
javascript模拟订火车票和退票示例
2014/04/24 Javascript
js实现浏览器窗口大小被改变时触发事件的方法
2015/02/02 Javascript
在for循环中length值是否需要缓存
2015/07/27 Javascript
JavaScript处理解析JSON数据过程详解
2015/09/11 Javascript
javascript url几种编码方式详解
2016/06/06 Javascript
Web安全测试之XSS实例讲解
2016/08/15 Javascript
JS函数修改html的元素内容,及修改属性内容的方法
2016/10/28 Javascript
利用n 升级工具升级Node.js版本及在mac环境下的坑
2017/02/15 Javascript
js时间查询插件使用详解
2017/04/07 Javascript
Node.js中的require.resolve方法使用简介
2017/04/23 Javascript
vue.js利用defineProperty实现数据的双向绑定
2017/04/28 Javascript
Vue keep-alive实践总结(推荐)
2017/08/31 Javascript
详解webpack编译多页面vue项目的配置问题
2017/12/11 Javascript
vue-cli2与vue-cli3在一台电脑共存的实现方法
2019/09/25 Javascript
js原生map实现的方法总结
2020/01/19 Javascript
[01:01]2020完美高校联赛(秋)西安落幕
2021/03/11 DOTA
详解Python中的多线程编程
2015/04/09 Python
Python中的XML库4Suite Server的介绍
2015/04/14 Python
python超简单解决约瑟夫环问题
2015/05/12 Python
使用numba对Python运算加速的方法
2018/10/15 Python
HTML的form表单和django的form表单
2019/07/25 Python
python 中的[:-1]和[::-1]的具体使用
2020/02/13 Python
pycharm 更改创建文件默认路径的操作
2020/02/15 Python
奥地利顶级内衣丝袜品牌英国站:Wolford英国
2016/08/29 全球购物
加拿大时尚潮流大码女装购物网站:Addition Elle
2018/04/02 全球购物
英国家居用品和床上用品零售商:P&B Home
2020/01/16 全球购物
优秀少先队员事迹材料
2014/12/24 职场文书
惹女朋友生气检讨书
2015/05/06 职场文书
Java中CyclicBarrier和CountDownLatch的用法与区别
2021/08/23 Java/Android
十大好看的穿越动漫排名:《瑞克和莫蒂》第一,国漫《有药》在榜
2022/03/18 日漫