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 实现插入排序算法
Jun 05 Python
Linux下Python安装完成后使用pip命令的详细教程
Nov 22 Python
Python面向对象程序设计类的多态用法详解
Apr 12 Python
Python 一键制作微信好友图片墙的方法
May 16 Python
Python hexstring-list-str之间的转换方法
Jun 12 Python
Python实现投影法分割图像示例(二)
Jan 17 Python
python标准库OS模块详解
Mar 10 Python
利用Python实现某OA系统的自动定位功能
May 27 Python
谈谈python垃圾回收机制
Sep 27 Python
Django框架请求生命周期实现原理
Nov 13 Python
深入理解Python变量的数据类型和存储
Feb 01 Python
asyncio异步编程之Task对象详解
Mar 13 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中通过Ajax如何实现异步文件上传的代码实例
2011/05/07 PHP
PHP中使用register_shutdown_function函数截获fatal error示例
2015/04/21 PHP
php常用图片处理类
2016/03/16 PHP
php字符集转换
2017/01/23 PHP
javascript开发随笔二 动态加载js和文件
2011/11/25 Javascript
JS Loading功能的简单实现
2013/11/29 Javascript
jQuery中serializeArray()与serialize()的区别实例分析
2015/12/09 Javascript
浅析AngularJs HTTP响应拦截器
2015/12/28 Javascript
基于JavaScript实现自动更新倒计时效果
2016/12/19 Javascript
Vue实现数字输入框中分割手机号码的示例
2017/10/10 Javascript
Vue2仿淘宝实现省市区三级联动
2020/04/15 Javascript
js实现点击展开隐藏效果(实例代码)
2018/09/28 Javascript
vue  directive定义全局和局部指令及指令简写
2018/11/20 Javascript
详解小程序如何避免多次点击,重复触发事件
2019/04/08 Javascript
解决Layui数据表格显示无数据提示的问题
2019/11/14 Javascript
微信小程序实现星级评价
2019/11/20 Javascript
Python程序设计入门(3)数组的使用
2014/06/16 Python
Python在Windows和在Linux下调用动态链接库的教程
2015/08/18 Python
python中numpy包使用教程之数组和相关操作详解
2017/07/30 Python
python使用minimax算法实现五子棋
2019/07/29 Python
Python PyQt5运行程序把输出信息展示到GUI图形界面上
2020/04/27 Python
Python Socket多线程并发原理及实现
2020/12/11 Python
AVON雅芳官网:世界上最大的美容化妆品公司之一
2016/11/02 全球购物
KEETSA环保床垫:更好的睡眠,更好的生活!
2016/11/24 全球购物
法国和欧洲海边和滑雪度假:Pierre & Vacances
2017/01/04 全球购物
NFL Game Pass欧洲:在线观看NFL比赛直播和点播,以高清质量播放
2018/08/30 全球购物
Nixon手表英国官网:美国尼克松手表品牌
2020/02/10 全球购物
车间主管岗位职责
2013/11/14 职场文书
男方父母证婚词
2014/01/12 职场文书
小学防溺水制度
2014/01/29 职场文书
四年级科学教学反思
2014/02/10 职场文书
2014企业领导班子四风对照检查材料思想汇报
2014/09/17 职场文书
《给予树》教学反思
2016/03/03 职场文书
导游词之潮音寺
2019/09/26 职场文书
详细了解java监听器和过滤器
2021/07/09 Java/Android
Redis高可用集群redis-cluster详解
2022/03/20 Redis