PYQT5(9)QLabel 实现右键在点击位置弹出菜单,并绑定事件

class MyLabel(QLabel):
    def __init__(self,centralwidget):
#centralwidget 窗体参数
        super().__init__(centralwidget)
        self.setContextMenuPolicy(QtCore.Qt.CustomContextMenu)
        self.customContextMenuRequested.connect(self.rightMenuShow)#开放右键策略
    def rightMenuShow(self, point):
#添加右键菜单
            self.popMenu = QMenu()
            tj=QAction(u'添加', self)
            sc=QAction(u'删除', self)
            xg = QAction(u'修改', self)
            self.popMenu.addAction(tj)
            self.popMenu.addAction(sc)
            self.popMenu.addAction(xg)
#绑定事件
            tj.triggered.connect(self.test)
            sc.triggered.connect(self.test)
            xg.triggered.connect(self.test)
            self.showContextMenu(QtGui.QCursor.pos())
    def test(self):
        print('test')
    def showContextMenu(self, pos):
#调整位置
        '''''
        右键点击时调用的函数
        '''
        # 菜单显示前,将它移动到鼠标点击的位置

        self.popMenu.move( pos)
        self.popMenu.show()
测试.gif

内容暴躁了点,正常现象

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。