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使用rsa加密算法模块模拟新浪微博登录
Jan 22 Python
python time模块用法实例详解
Sep 11 Python
Python单元测试框架unittest使用方法讲解
Apr 13 Python
python实现读取命令行参数的方法
May 22 Python
Python类的用法实例浅析
May 27 Python
Flask框架中密码的加盐哈希加密和验证功能的用法详解
Jun 07 Python
Python之list对应元素求和的方法
Jun 28 Python
python  创建一个保留重复值的列表的补码
Oct 15 Python
python 输出所有大小写字母的方法
Jan 02 Python
对python 合并 累加两个dict的实例详解
Jan 21 Python
python 实现兔子生兔子示例
Nov 21 Python
Python数据可视化常用4大绘图库原理详解
Oct 23 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
PHP 利用Mail_MimeDecode类提取邮件信息示例
2014/01/26 PHP
php使用fopen创建utf8编码文件的方法
2014/10/31 PHP
php使用memcoder将视频转成mp4格式的方法
2015/03/12 PHP
PHP连接数据库实现注册页面的增删改查操作
2016/03/27 PHP
ThinkPHP框架获取最后一次执行SQL语句及变量调试简单操作示例
2018/06/13 PHP
php生成静态页面并实现预览功能
2019/06/27 PHP
关于laravel 日志写入失败问题汇总
2019/10/17 PHP
js Function类型
2011/12/04 Javascript
js读取注册表的键值示例
2013/09/25 Javascript
javascript中打印当前的时间实现思路及代码
2013/12/18 Javascript
Bootstrap按钮组件详解
2016/04/26 Javascript
Vue.JS入门教程之处理表单
2016/12/01 Javascript
详解使用nvm管理多版本node的方法
2017/08/30 Javascript
利用nvm管理多个版本的node.js与npm详解
2017/11/02 Javascript
Vue官网todoMVC示例代码
2018/01/29 Javascript
JavaScript面向对象继承原理与实现方法分析
2018/08/09 Javascript
Angularjs之ngModel中的值验证绑定方法
2018/09/13 Javascript
JS数组Object.keys()方法的使用示例
2019/06/05 Javascript
[01:53]DOTA2超级联赛专访Zhou 五年职业青春成长
2013/05/29 DOTA
Python查找相似单词的方法
2015/03/05 Python
TensorFlow搭建神经网络最佳实践
2018/03/09 Python
解决pyecharts在jupyter notebook中使用报错问题
2020/04/23 Python
解决win7操作系统Python3.7.1安装后启动提示缺少.dll文件问题
2019/07/15 Python
给 TensorFlow 变量进行赋值的方式
2020/02/10 Python
用CSS3实现Win8风格的方格导航菜单效果
2013/04/10 HTML / CSS
南京软件公司的.net程序员笔试题
2014/08/31 面试题
母亲节演讲稿范文
2014/01/02 职场文书
副厂长岗位职责
2014/02/02 职场文书
诚信考试承诺书
2014/03/27 职场文书
初中作文评语大全
2014/04/23 职场文书
汽车广告策划方案
2014/05/31 职场文书
励志演讲稿200字
2014/08/21 职场文书
美术教师个人总结
2015/02/06 职场文书
辩论赛新闻稿
2015/07/17 职场文书
怎么用Python识别手势数字
2021/06/07 Python
MySQL系列之十 MySQL事务隔离实现并发控制
2021/07/02 MySQL