wxpython 树菜单单击_请教怎么在wxpython调用windows系统的右键菜单(context menu)?
我在学习使用wxpython制作一款windows下的文件管理器,树形菜单已经实现,现在想实现在文件树节点上单击右键,弹出Explorer的上下文菜单,查阅资料无数..... wxpython没有内置的实现,看了一些别的语言的介绍,写出下面的代码片段
def GetFolderAndPIDLForPath(filename):
desktop = shell.SHGetDesktopFolder()
info = desktop.ParseDisplayName(0, None, os.path.abspath(filename))
cchEaten, pidl, attr = info
# We must walk the ID list, looking for one child at a time.
folder = desktop
while len(pidl) > 1:
this = pidl.pop(0)
folder = folder.BindToObject([this], None, shell.IID_IShellFolder)
# We are left with the pidl for the specific item. Leave it as
# a list, so it remains a valid PIDL.
return folder, pidl
def OnItemRightClick(self, evt):
hwnd = self.GetHandle()
folder, pidl = self.GetFolderAndPIDLForPath('D:\\')
pidls = [pidl]
inout, cm = folder.GetUIObjectOf(hwnd, pidls, shell.IID_IContextMenu, 0)
hmenu = win32gui.CreatePopupMenu()
flags = 0
flags |= shellcon.CMF_EXPLORE
cm.QueryContextMenu(hmenu, 0, 1, -1, flags)
spt = evt.GetPoint()
tpm_flags = win32con.TPM_LEFTALIGN | win32con.TPM_RETURNCMD | win32con.TPM_RIGHTBUTTON
win32gui.TrackPopupMenu(hmenu,tpm_flags,spt[0], spt[1], 0, hwnd, None)
结果触发的时候,没有异常报出,整个程序直接崩溃了...
请问那位朋友了解有相关的问题... 谢谢了
wxpython 树菜单单击_请教怎么在wxpython调用windows系统的右键菜单(context menu)?相关推荐
- Electron-vue开发实战7——命令行调用与系统级别右键菜单项的实现
原文首发在我的博客,欢迎关注! 前言 前段时间,我用electron-vue开发了一款跨平台(目前支持主流三大桌面操作系统)的免费开源的图床上传应用--PicGo,在开发过程中踩了不少的坑,不仅来自应 ...
- 右键菜单_右键菜单太长会导致电脑卡顿?轻松删除右键菜单无用项
有些人的电脑桌面看起来很整洁有序,结果点一下右键要卡 2秒,弹出来的菜单比脸都长,新建一个文件夹都要找半天. 右键菜单一直是各大软件刷存在感的好地方,因为比起桌面.任务栏和开始菜单,右键菜单使用频 ...
- 更改计算机菜单字体大小,windows10系统修改右键菜单字体的方法
默认情况下,每台win10系统电脑的字体都是一样的,不过一些用户由于个人需求,就想要进行更改.该如何操作呢?今天,系统城小编将在下面给大家分享windows10系统修改右键菜单字体的方法.有需要的朋友 ...
- 服务器系统右键关机,Win7系统在右键菜单中添加关机选项的方法
在win7系统中,我们关机的话可以通过开始菜单中的关机选项中来选择关机,那么其实还有更方便的方法,就是在右键菜单中添加关机选项,这样就可以快速关机了,现在给大家分享一下Win7系统在右键菜单中添加关机 ...
- win7 右键计算机 服务 设备管理器,win7系统计算机右键菜单添加设备管理器的操作方法...
今天和大家分享一下关于对win7系统计算机右键菜单添加设备管理器设置的方法,在使用win7系统的过程中经常不知道如何去对win7系统计算机右键菜单添加设备管理器进行设置,有什么好的办法去设置win7系 ...
- 电脑中计算机右键管理无法打开,win8系统计算机右键菜单中的管理打不开怎么办...
计算机管理一组Windows管理工具,这些工具被组合到一个控制台中,方便我们操作.最近有些雨林木风win8旗舰版用户遇到了计算机管理打不开的情况,在右键点击计算机打开菜单后,点击管理打不开,遇到 ...
- 解决Windows资源管理器右键菜单打开EditPlus容易导致资源管理器无响应问题
解决Windows资源管理器右键菜单打开EditPlus容易导致资源管理器无响应问题 参考文章: (1)解决Windows资源管理器右键菜单打开EditPlus容易导致资源管理器无响应问题 (2)ht ...
- windows 2003 server右键菜单没有共享选项的解决办法
windows 2003 server右键菜单没有共享选项的解决办法 首先检查: 1.是否administrator身份登录 2.运行services.msc,检查server,workstation ...
- 右键计算机没有软件删减,右键菜单太长会导致电脑卡顿?轻松删除右键菜单无用项!...
原标题:右键菜单太长会导致电脑卡顿?轻松删除右键菜单无用项! 有些人的电脑桌面看起来很整洁有序,结果点一下右键要卡 2秒,弹出来的菜单比脸都长,新建一个文件夹都要找半天. 右键菜单一直是各大软件刷存在 ...
最新文章
- 炒菜机器人煎鸡蛋视频_我的生活小技巧,今天才发现鹅油那么好用,炸鸡蛋炸豆腐都挺好...
- Python+Selenium 技巧篇-svg标签内元素的xpath定位方式
- 基于SIMULINK的六足机器人仿真
- 沟通无国界,云信助力译牛构建远程会议同传新模式
- 现在的便签本都这么社会了!?重复写万次还能云端保存
- 如何查看cplex的help文档_word查看技巧:如何快速找到文档的修改痕迹
- 消息传递的图神经网络
- 白盒测试方法_软件测试的种类:白盒测试和黑盒测试
- 高并发系统的限流算法
- 【HDU5409】CRB and Graph 边双联通 子树最值
- 数理逻辑习题集(6)
- 鸿蒙系统摩尔纹怎么去,PS摩尔纹如何消除?摩尔纹消除方法图文分享
- zemax设计35mm镜头_镜头光学设计宝典结合Zemax实例分析(中文版).pdf
- 控制天象,世间的最强者!
- 基于Goolgle最新NavigationDrawer实现全屏水平平移
- undefined symbol 问题解决记录
- SEO静态页面生成系统
- 四、 按键控制流水灯的运行与暂停
- 产品狗的Python之路(2):excel表格拆分桌面小程序
- 关于Parser的知识点总结