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打印scrapy蜘蛛抓取树结构的方法
Apr 08 Python
python实现将文本转换成语音的方法
May 28 Python
Python计算三维矢量幅度的方法
Jun 15 Python
Python设置默认编码为utf8的方法
Jul 01 Python
使用Python写一个小游戏
Apr 02 Python
浅谈关于Python3中venv虚拟环境
Aug 01 Python
Python提取频域特征知识点浅析
Mar 04 Python
python实现批量文件重命名
Oct 31 Python
Python实现搜索算法的实例代码
Jan 02 Python
django-orm F对象的使用 按照两个字段的和,乘积排序实例
May 18 Python
python如何代码集体右移
Jul 20 Python
利用python查看数组中的所有元素是否相同
Jan 08 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对象类型判断
2008/08/27 PHP
深入php 正则表达式的学习探讨
2013/06/06 PHP
修改php.ini以达到屏蔽错误信息并记录日志
2013/06/16 PHP
CI框架中site_url()和base_url()的区别
2015/01/07 PHP
php对文件进行hash运算的方法
2015/04/03 PHP
DHTML 中的绝对定位
2006/11/26 Javascript
JavaScript面向对象之Prototypes和继承
2012/07/12 Javascript
编写js扩展方法判断一个数组中是否包含某个元素
2013/11/08 Javascript
jQueryeasyui 中如何使用datetimebox 取两个日期间相隔的天数
2017/06/13 jQuery
js实现QQ面板拖拽效果(慕课网DOM事件探秘)(全)
2017/09/19 Javascript
详解vue+css3做交互特效的方法
2017/11/20 Javascript
详解关于微信setData回调函数中的坑
2019/02/18 Javascript
浅谈vue在html中出现{{}}的原因及解决方式
2020/11/16 Javascript
[05:17]DOTA2睡衣妹卖萌求签名 CJ第二天全明星影像
2013/07/28 DOTA
[42:39]老党炸弹人试玩视频
2014/09/03 DOTA
[01:07:11]Secret vs Newbee 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/17 DOTA
[01:08:32]DOTA2-DPC中国联赛 正赛 DLG vs PHOENIX BO3 第二场 1月18日
2021/03/11 DOTA
Python实现按学生年龄排序的实际问题详解
2017/08/29 Python
Python基于递归和非递归算法求两个数最大公约数、最小公倍数示例
2018/05/21 Python
通过python连接Linux命令行代码实例
2020/02/18 Python
Pytorch 使用opnecv读入图像由HWC转为BCHW格式方式
2020/06/02 Python
Python实现数字的格式化输出
2020/08/01 Python
Java中有几种类型的流?JDK为每种类型的流提供了一些抽象类以供继承,请说出他们分别是哪些类
2012/02/06 面试题
ORACLE第二个十问
2013/12/14 面试题
什么是makefile? 如何编写makefile?
2013/01/02 面试题
Shell编程面试题
2016/05/29 面试题
七一党建活动方案
2014/01/28 职场文书
后勤部经理岗位职责
2014/02/23 职场文书
反四风对照检查材料
2014/09/22 职场文书
作弊检讨书
2015/01/27 职场文书
2015年建筑工作总结报告
2015/05/04 职场文书
同意离婚答辩状
2015/05/22 职场文书
2016婚礼主持词开场白
2015/11/24 职场文书
Redis入门教程详解
2021/08/30 Redis
Pygame Rect区域位置的使用(图文)
2021/11/17 Python
Docker与K8s关系介绍不会Docker也可以使用K8s
2022/06/25 Servers