python 创建弹出式菜单的实现代码

python 创建弹出式菜单的实现代码

           实现效果图:

Python代码 

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),\
                 'MFC GUI',WS_OVERLAPPEDWINDOW,\
                 (10,10,800,500),None,0,None)
    self.HookMessage(self.OnRClick,WM_RBUTTONDOWN) 

  def OnClose(self):
    self.EndModalLoop(0)
  def OnRClick(self,param):
    submenu = win32ui.CreatePopupMenu()
    submenu.AppendMenu(MF_STRING,1054,'Copy')
    submenu.AppendMenu(MF_STRING,1055,'Paste')
    submenu.AppendMenu(MF_STRING,1056,None)
    submenu.AppendMenu(MF_STRING,1057,'Cut')
    flag = TPM_LEFTALIGN|TPM_LEFTBUTTON|TPM_RIGHTBUTTON
    submenu.TrackPopupMenu(param[5],flag,self)
w = MyWnd()
w.ShowWindow()
w.UpdateWindow()
w.RunModalLoop(1)

以上使用python 创建弹出式菜单的简单实例,如有疑问,大家可以到本站社区交流,感谢阅读,谢谢大家对本站的支持!

(0)

相关推荐

  • python实现应用程序在右键菜单中添加打开方式功能

    最近项目组开发的一个小工具想要在右键菜单中添加打开方式,以有道云笔记为例进行了需求拆解和代码编写 1.需求拆解: 如何实现手动添加右键菜单的打开方式: Step1:打开注册表编辑器,Win+R->输入 "regedit" Step2:在HKEY_CLASSES_ROOT/*/shell (或者HKEY_LOCAL_MACHINE/SOFTWARE/Classes/*/shell ,两个目录是一样的) 添加一个key:YNote,然后在该项中新建项command,然后再编辑字符串,

  • Python模拟三级菜单效果

    本文实例为大家分享了Python模拟三级菜单效果的具体代码,供大家参考,具体内容如下 1.功能简介 此程序模拟多级菜单操作,实现按菜单项对应数字索引进入下级菜单,按b键回退到上一级菜单,按q键退出菜单.并用一个简化的学科专业目录进行了三级菜单测试,实际上此程序可适用任意多级菜单操作. 2.实现方法 本程序采用python语言编写,为了高效实现菜单操作,减少循环次数,关键定义了如下三个变量: current_menu_dict:非最低级菜单时为一个嵌套字典,在最低级菜单时为一个列表,存放当前级及后

  • Python实现微信公众平台自定义菜单实例

    首先先获取access_token,并保存与全局之中 def token(requset): url = 'https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=%s&secret=%s' % ( Config.AppID, Config.AppSecret) result = urllib2.urlopen(url).read() Config.access_token = json.load

  • python之wxPython菜单使用详解

    本文实例讲述了python中wxPython菜单的使用方法,分享给大家供大家参考.具体如下: 先来看看下面这段代码: import wx APP_EXIT=1 #定义一个控件ID class Example(wx.Frame): def __init__(self, parent, id, title): super(Example,self).__init__(parent, id, title) #调用你类的初始化 self.InitUI() #调用自身的函数 def InitUI(self

  • Python字典实现简单的三级菜单(实例讲解)

    如下所示: data = { "北京":{ "昌平":{"沙河":["oldboy","test"],"天通苑":["链接地产","我爱我家"]}, "朝阳":{"望京":["奔驰","陌陌"],"国贸":["CICC",&quo

  • python递归查询菜单并转换成json实例

    最近需要用python写一个菜单,折腾了两三天才搞定,现在记录在此,需要的朋友可以借鉴一下. 备注:文章引用非可执行完整代码,仅仅摘录了关键部分的代码 环境 数据库:mysql python:3.6 表结构 CREATE TABLE `tb_menu` ( `id` varchar(32) NOT NULL COMMENT '唯一标识', `menu_name` varchar(40) DEFAULT NULL COMMENT '菜单名称', `menu_url` varchar(100) DE

  • 使用python实现省市三级菜单效果

    地区分三层结构例如: 大中华地区一级划分: 华东 华中 华北 西南 特别行政区 华南 ------------------------------------------------- 请输入你要查看的大中华地区名字:华中 ------------------包含的省名字二级:----------------- 湖北 湖南 河南 ------------------------------------------------- 请输入你要查看的省名字:湖北 --------------包含的城市

  • Python自动化开发学习之三级菜单制作

    本文实例为大家分享了Python三级菜单展示的具体代码,供大家参考,具体内容如下 作业需求: (1)运行程序输出第一级菜单 (2)选择一级菜单某项,输出二级菜单,同理输出三级菜单 (3)让用户选择是否要退出 (4)有返回上一级菜单的功能 data = { "天津":{ "南开区":{ "南开大学":{ "历史系":{}, "文学系":{}, "英语系":{}, }, "科技大学

  • python 创建弹出式菜单的实现代码

    python 创建弹出式菜单的实现代码            实现效果图: Python代码  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(W

  • Python创建增量目录的代码实例

    目录 需求很简单 代码 使用方法 总结 需求很简单 比如我在做机器学习实验的时候,实验结果的保存路径是'runs/exp'. 这样就会出现一个问题:当我第二次运行程序的时候,如果我忘记更改代码中的路径名或者清除上次实验结果,这次的实验结果会和上次实验结果混在一起,很头疼. 所以我希望在下次实验的时候代码自动创建一个新的目录,如:'runs/exp2',来保存新的实验结果. 代码 粘贴复制,直接照着下面用就行. 下面的函数是我从yolo5里复制过来的,代码质量很高,鲁棒性很高,可以放心使用. fr

  • Python基于win32ui模块创建弹出式菜单示例

    本文实例讲述了Python基于win32ui模块创建弹出式菜单.分享给大家供大家参考,具体如下: 一.代码: # -*- 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

  • 使用python脚本自动创建pip.ini配置文件代码实例

    这篇文章主要介绍了使用python脚本自动创建pip.ini配置文件代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 运行一下python代码自动创建pip/pip.ini文件并添加pip源 """ python建立pip.ini.py 2016年4月30日 03:35:11 codegay """ import os ini="""[global] inde

  • Python线程创建和终止实例代码

    python主要是通过thread和threading这两个模块来实现多线程支持. python的thread模块是比較底层的模块,python的threading模块是对thread做了一些封装,能够更加方便的被使用.可是python(cpython)因为GIL的存在无法使用threading充分利用CPU资源,假设想充分发挥多核CPU的计算能力须要使用multiprocessing模块(Windows下使用会有诸多问题). 假设在对线程应用有较高的要求时能够考虑使用Stackless Pyt

  • Python中根据时间自动创建文件夹的代码实现

    导语 ​ 电脑桌面文件太多查找起来比较花费时间,并且凌乱的电脑桌面也会影响工作心情,于是利用python根据时间自动建立当日文件夹,这样就可以把桌面上文件按时间进行存放. 代码实现 # _*_coding:utf-8_*_ import os import datetime def create_folder(path): # 年-月-日 时:分:秒 now_time = datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S") # 年

  • Python线程池thread pool创建使用及实例代码分享

    目录 前言 一.线程 1.线程介绍 2.线程特性 轻型实体 独立调度和分派的基本单位 可并发执行 4)共享进程资源 二.线程池 三.线程池的设计思路 四.Python线程池构建 1.构建思路 2.实现库功能函数 ThreadPoolExecutor() submit() result() cancel() cancelled() running() as_completed() map() 前言 首先线程和线程池不管在哪个语言里面,理论都是通用的.对于开发来说,解决高并发问题离不开对多个线程处理

  • Python创建普通菜单示例【基于win32ui模块】

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

  • Python创建二维数组实例(关于list的一个小坑)

    0.目录 1.遇到的问题 2.创建二维数组的办法 •3.1 直接创建法 •3.2 列表生成式法 •3.3 使用模块numpy创建 1.遇到的问题 今天写Python代码的时候遇到了一个大坑,差点就耽误我交作业了... 问题是这样的,我需要创建一个二维数组,如下: m = n = 3 test = [[0] * m] * n print("test =", test) 输出结果如下: test = [[0, 0, 0], [0, 0, 0], [0, 0, 0]] 是不是看起来没有一点问

  • Python 使用SMTP发送邮件的代码小结

    SMTP(Simple Mail Transfer Protocol)即简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式. python的smtplib提供了一种很方便的途径发送电子邮件.它对smtp协议进行了简单的封装. Python创建 SMTP 对象语法如下: import smtplib smtpObj = smtplib.SMTP( [host [, port [, local_hostname]]] ) 参数说明: host: SMTP 服务器

随机推荐