pyside+pyqt实现鼠标右键菜单功能


Posted in Python onDecember 08, 2020

本文为大家分享了pyside pyqt实现鼠标右键菜单功能的具体代码,供大家参考,具体内容如下

在三维软件中使用pyside/pyqt编写gui界面时,为了艺术家使用操作的简洁,以及方便,经常会使用鼠标右键菜单进行界面与功能的交互。下面就介绍一下这一功能,当然了网上也有很多案列可供参考。

# -*- encoding: utf-8 -*-
try:
 from PySide import QtGui 
 from PySide import QtCore
except ImportError:
 from PySide2 import QtWidgets as QtGui
 from PySide2 import QtCore
import sys
class MainWindow(QtGui.QMainWindow):
 def __init__(self):
 super(MainWindow, self).__init__()
 self.createContextMenu()

 def createContextMenu(self):
 ''''' 
 创建右键菜单 
 '''
 # 必须将ContextMenuPolicy设置为Qt.CustomContextMenu
 # 否则无法使用customContextMenuRequested信号
 self.setContextMenuPolicy(QtCore.Qt.CustomContextMenu)
 self.customContextMenuRequested.connect(self.showContextMenu)

 # 创建QMenu
 self.contextMenu = QtGui.QMenu(self)
 self.actionA = self.contextMenu.addAction(u'添加')
 self.actionB = self.contextMenu.addAction(u'删除')
 # 将动作与处理函数相关联
 # 这里为了简单,将所有action与同一个处理函数相关联,
 # 当然也可以将他们分别与不同函数关联,实现不同的功能
 self.actionA.triggered.connect(self.actionHandler)
 self.actionB.triggered.connect(self.actionHandler)

 def showContextMenu(self, pos):
 ''''' 
 右键点击时调用的函数 
 '''
 # 菜单显示前,将它移动到鼠标点击的位置
 self.contextMenu.move(QtGui.QCursor().pos())
 self.contextMenu.show()

 def actionHandler(self):
 ''''' 
 菜单中的具体action调用的函数 
 '''
 print 'action handler'

if __name__ == '__main__':
 app = QtGui.QApplication(sys.argv)
 window = MainWindow()
 window.show()
 sys.exit(app.exec_())

简单的右键菜单就实现了,连接功能就学要按照需求进行添加。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python实现二分法算法实例
Feb 02 Python
Python类定义和类继承详解
May 08 Python
解决python3 urllib 链接中有中文的问题
Jul 16 Python
在Python中使用defaultdict初始化字典以及应用方法
Oct 31 Python
解决python中无法自动补全代码的问题
Dec 04 Python
浅谈python3发送post请求参数为空的情况
Dec 28 Python
Python socket实现多对多全双工通信的方法
Feb 13 Python
pycharm实现在子类中添加一个父类没有的属性
Mar 12 Python
Python 实现自动完成A4标签排版打印功能
Apr 09 Python
Python基于Faker假数据构造库
Nov 30 Python
Opencv+Python识别PCB板图片的步骤
Jan 07 Python
快速一键生成Python爬虫请求头
Mar 04 Python
基于PyQt4和PySide实现输入对话框效果
Feb 27 #Python
python使用PyQt5的简单方法
Feb 27 #Python
Python创建字典的八种方式
Feb 27 #Python
基于wxPython的GUI实现输入对话框(2)
Feb 27 #Python
基于wxPython的GUI实现输入对话框(1)
Feb 27 #Python
Python使用字典的嵌套功能详解
Feb 27 #Python
Python list列表中删除多个重复元素操作示例
Feb 27 #Python
You might like
随机广告显示(PHP函数)
2006/10/09 PHP
php中突破基于HTTP_REFERER的防盗链措施(stream_context_create)
2011/03/29 PHP
PHP连接MongoDB示例代码
2012/09/06 PHP
PHP mail()函数使用及配置方法
2014/01/14 PHP
DEDE实现转跳属性文档在模板上调用出转跳地址
2016/11/04 PHP
js Math 对象的方法
2013/09/01 Javascript
Css3制作变形与动画效果
2015/07/24 Javascript
jQueryUI中的datepicker使用方法详解
2016/05/25 Javascript
Active控件问题小结(附解决办法)
2016/06/09 Javascript
jquery实现跳到底部,回到顶部效果的简单实例(类似锚)
2016/07/10 Javascript
浅析JS中对函数function的理解(基础篇)
2016/10/14 Javascript
jQuery使用Layer弹出层插件闪退问题
2016/12/22 Javascript
如何选择jQuery版本 1.x? 2.x? 3.x?
2017/04/01 jQuery
Vue项目webpack打包部署到服务器的实例详解
2017/07/17 Javascript
node.js支持多用户web终端实现及安全方案
2017/11/29 Javascript
Javascript将图片的绝对路径转换为base64编码的方法
2018/01/11 Javascript
微信小程序事件流原理解析
2019/11/27 Javascript
vue项目实现图片上传功能
2019/12/23 Javascript
vue实现单一筛选、删除筛选条件
2020/10/26 Javascript
Python 模拟购物车的实例讲解
2017/09/11 Python
python实现AES加密与解密
2019/03/28 Python
Python 网络编程之TCP客户端/服务端功能示例【基于socket套接字】
2019/10/12 Python
利用html5 file api读取本地文件示例(如图片、PDF等)
2018/03/07 HTML / CSS
德国圣伯纳德草药屋:Kräuterhaus Sanct Bernhard(有中文站)
2018/08/05 全球购物
馥蕾诗美国官网:Fresh美国
2019/10/09 全球购物
JMS中Topic和Queue有什么区别
2013/05/15 面试题
专营店会计助理岗位职责
2013/11/29 职场文书
夜班门卫岗位职责
2013/12/09 职场文书
家佳咖啡店创业计划书
2013/12/27 职场文书
《小猫刮胡子》教学反思
2014/02/21 职场文书
财务会计自荐信范文
2014/02/21 职场文书
农民工工资发放承诺书
2014/03/31 职场文书
安全协议书
2014/04/23 职场文书
庆元旦活动总结
2014/07/09 职场文书
个人工作表现评价材料
2014/09/21 职场文书
用Python实现屏幕截图详解
2022/01/22 Python