python PyQt5/Pyside2 按钮右击菜单实例代码

yipeiwu_com6年前Python基础

具体代码如下所述:

import sys
from PySide2.QtGui import *
from PySide2.QtCore import *
from PySide2.QtWidgets import *
class MainForm(QMainWindow):
  def __init__(self, parent=None):
    super(MainForm, self).__init__(parent)
    # create button
    self.button = QPushButton("test button", self)    
    self.button.resize(100, 30)
    # set button context menu policy
    self.button.setContextMenuPolicy(Qt.CustomContextMenu)
    self.button.customContextMenuRequested.connect(self.on_context_menu)
    # create context menu
    self.popMenu = QMenu(self)
    self.popMenu.addAction(QAction('test0', self))
    self.popMenu.addAction(QAction('test1', self))
    self.popMenu.addSeparator()
    self.popMenu.addAction(QAction('test2', self))
  def on_context_menu(self, point):
    # show context menu
    self.popMenu.exec_(self.button.mapToGlobal(point))
def main():
  app = QApplication(sys.argv)
  form = MainForm()
  form.show()
  app.exec_()
if __name__ == '__main__':
  main()

 总结

以上所所述是小编给大家介绍的python PyQt5/Pyside2 按钮右击菜单实例代码,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

相关文章

Python + OpenCV 实现LBP特征提取的示例代码

Python + OpenCV 实现LBP特征提取的示例代码

背景 看了些许的纹理特征提取的paper,想自己实现其中部分算法,看看特征提取之后的效果是怎样 运行环境 Mac OS Python3.0 Anaconda3(集成了很多包...

python将一组数分成每3个一组的实例

如下所示: a = [1,2,3,4,5,6,7,8,9,10,11] step = 3 b = [a[i:i+step] for i in range(0,len(a),step)...

Python和JavaScript间代码转换的4个工具

Python和JavaScript间代码转换的4个工具

选 Python 还是 JavaScript?虽然不少朋友还在争论二者目前谁更强势、谁又拥有着更为光明的发展前景,但毫无疑问,二者的竞争在 Web 前端领域已经拥有明确的答案。立足于浏览...

如何不用安装python就能在.NET里调用Python库

如何不用安装python就能在.NET里调用Python库

前言 Pythonnet这个屌爆的项目的出现,使得我们可以用一种新的方式,让C#可以和Python之间进行互操作。但是它的设置和部署可能有点问题,真的是这样吗? 本文我会介绍Python...

分享Python切分字符串的一个不错方法

一同事问:有一字符串“abcdefghijklmn”如何用Python来切分,每四个一段,剩下的算一段。字符段切分,首先会想到split()和 re.split()函数,但仔细想了一下,...