本文实例讲述了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),\

'www.jb51.net - 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)

二、运行效果:

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

pip install pypiwin32

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

python win32ui_Python创建普通菜单示例【基于win32ui模块】相关推荐

  1. python调用菜单响应事件_Python处理菜单消息操作示例【基于win32ui模块】

    本文实例讲述了Python处理菜单消息操作.分享给大家供大家参考,具体如下: 一.代码 # -*- coding:utf-8 -*- #! python3 import win32ui import ...

  2. boost::python模块实现使用任意 Python 序列创建 ndarray 的示例

    boost::python模块实现使用任意 Python 序列创建 ndarray 的示例 实现功能 C++实现代码 实现功能 boost::python模块实现使用任意 Python 序列创建 nd ...

  3. boost::python模块实现使用内置 python 数据类型创建 ndarrays 的示例,并提取成员变量的类型和值测试程序

    boost::python模块实现使用内置 python 数据类型创建 ndarrays 的示例,并提取成员变量的类型和值测试程序 实现功能 C++实现代码 实现功能 boost::python模块实 ...

  4. Python Flask 创建微信菜单中文名称 invalid charset. please check your request, if include \\uxxxx will create f

    Python Flask 创建微信菜单中文名称 invalid charset. please check your request, if include \\uxxxx will create f ...

  5. python弹球小游戏程序_Python基于Tkinter模块实现的弹球小游戏

    本文实例讲述了Python基于Tkinter模块实现的弹球小游戏.分享给大家供大家参考,具体如下: #!usr/bin/python #-*- coding:utf-8 -*- from Tkinte ...

  6. python合并单元格居中_Python基于xlrd模块处理合并单元格

    目的: python能使用xlrd模块实现对Excel数据的读取,且按照想要的输出形式. 总体思路: (1)要想实现对Excel数据的读取,需要用到第三方应用,直接应用. (2)实际操作时候和我们实际 ...

  7. python代码电影人物关系_Python基于network模块制作电影人物关系图

    Python基于network模块制作电影人物关系图,节点,值为,模块,关系,算法 Python基于network模块制作电影人物关系图 易采站长站,站长之家为您整理了Python基于network模 ...

  8. python合并单元格处理_Python基于xlrd模块处理合并单元格

    目的: python能使用xlrd模块实现对Excel数据的读取,且按照想要的输出形式. 总体思路: (1)要想实现对Excel数据的读取,需要用到第三方应用,直接应用. (2)实际操作时候和我们实际 ...

  9. python菜单栏添加子菜单_python添加菜单图文讲解

    分享一个基于tkinter的菜单程序添加操作,希望对需要的朋友有帮助. 打开python集成开发环境,使用 from tkinter import Tk from tkinter import Men ...

最新文章

  1. [SDOI2015]权值
  2. AI进军新药发现研究?这99页slides了解一下
  3. linux a文本编辑大全,Linux sed 命令 - Linux文档编辑命令大全
  4. 数据库入门浅析:ASP.NET与MySQL连接
  5. linux 数组的简单总结
  6. logstic 回归
  7. S2-016、S2-017
  8. 简明的后台样式查询模板
  9. jumpserver简易安装
  10. 金融数据分析与挖掘实战练习2.5-2.9
  11. WebStorm 2017 最新版激活方式
  12. html怎么设置动画保持,html – 如何使用CSS3为td列可见性设置动画
  13. DNN深度神经网络、RBM受限玻尔兹曼机、DBN深度置信网络
  14. DSP课设项目(ICETEK-VC5509-EDU)
  15. AdventNet 系列软件license
  16. 犯贱报(一张浓缩大学生活的..)
  17. Carryon 数数字
  18. 计算机组成总CPI,计算机组成原理——计算机系统概述考研题
  19. GRE词汇乱序版-夹生的词汇1
  20. ajax证书问题,网站上有错误的SSL证书的Jquery Ajax

热门文章

  1. 线程 sleep 取消_C/C++ 多线程机制
  2. 一个计算机台式机的组装方案,既能带又便宜的电脑组装方案,华擎deskmini310组装晒单...
  3. python 通信模块_python 多进程通信模块
  4. 保存时间 默认_一些不起眼但又非常的实用的PPT制作技巧,大大节省PPT制作时间...
  5. h5 bootstrap 小程序模板_软件测试人员必知H5/小程序测试点
  6. JavaSE——常用类库(String类)
  7. 吴恩达《机器学习》学习笔记九——神经网络相关(1)
  8. MFC基于单文档制作吹彩色泡泡程序
  9. 利用TabWidget实现底部菜单
  10. linux中写脚本不能写中文,Linux系统中Sublime Text无法输入中文怎么办?