[pyqt5]右键窗口弹出菜单并触发菜单点击事件

news2024/9/28 5:27:19
from PyQt5.Qt import *
import sys


class MyWindow(QWidget):
    # 自定义窗体
    def contextMenuEvent(self, evt: QContextMenuEvent) -> None:
        menu = QMenu(self)
        new_action = QAction('打开', menu)
        new_action.triggered.connect(self.open)
        close_action = QAction('关闭', menu)
        close_action.triggered.connect(self.close)
        menu.addAction(new_action)
        menu.addAction(close_action)

        # point 调用
        menu.exec_(evt.globalPos())

    def open(self):
        print('open')

    def close(self):
        print('close')


if __name__ == '__main__':
    app = QApplication(sys.argv)
    win = MyWindow()
    win.setGeometry(300, 300, 500, 400)
    win.show()
    sys.exit(app.exec_())

运行结果:

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/712150.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Jupyter的安装与启动

一、简介 Jupyter Notebook(此前被称为 IPython notebook)是一个交互式笔记本,支持运行 40 多种编程语言。 Jupyter Notebook是一个开源的Web应用程序,允许用户创建和共享包含代码、方程式、可视化和文本的文档,支持…

【编码魔法师系列_六大原则2】里氏替换原则(Liskov Substitution Principle LSP Principle)

学会设计模式,你就可以像拥有魔法一样,在开发过程中解决一些复杂的问题。设计模式是由经验丰富的开发者们(GoF)凝聚出来的最佳实践,可以提高代码的可读性、可维护性和可重用性,从而让我们的开发效率更高。通…

BKP备份寄存器RTC实时时钟

BKP本质上是RAM寄存器,不能完全掉电不丢失,它的数据需要VBAT引脚提供的备用电源来维持。RTC复位和掉电不丢失是通过BKP来实现的。 目录 Unix时间戳 简介 计时标准​编辑 时间戳转换​编辑 示例代码 BKP 简介 BKP基本结构 RTC RTC简介 RTC框图 RT…

【100个 Unity实用技能】 | Unity中Text文本框 和 InputField文本输入框 内容换行问题【文末送书】

🎬 博客主页:https://xiaoy.blog.csdn.net 🎥 本文由 呆呆敲代码的小Y 原创,首发于 CSDN🙉 🎄 学习专栏推荐:Unity系统学习专栏 🌲 游戏制作专栏推荐:游戏制作 &…

【深度学习】神经网络初学者指南

一、说明 这是一篇对神经网络的泛泛而谈的文章,我的意见是,先知道框架,而后知道每一个细节,这是学习人工智能的基本路线。本文就神经网络而言,谈到一些基础概念,适应于初学者建立概念。 二、神经网络定义 神…

初学Spring boot (一) Hello,World!

SpringBoot简介 回顾什么是Spring? Spring是一个开源框架,2003 年兴起的一个轻量级的Java 开发框架,作者:Rod Johnson 。 Spring是为了解决企业级应用开发的复杂性而创建的,简化开发。 Spring是如何简化Java开发的 为了降低Java…

element 表格

实现效果: 需求: 1. 左侧新增分类功能添加数据到左侧分类表格中。 2. 分类表格可以编辑和删除。 3. 右侧添加标签功能,添加标签至所属分类中。 4.右侧表格显示分类与所挂在当前分类下的所有标签。 5. 右侧表格内删除按钮,删除…

C++之模板类指向子类对象(一百四十六)

简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长! 优质专栏:Audio工程师进阶系列【原创干货持续更新中……】🚀 人生格言: 人生…

diy遥控飞机模型的基本要点-4

电调 电调(Electronic Speed Controller,简称ESC)是遥控飞机中的一种关键设备,用于控制电动马达的转速和方向。下面是关于电调的一些知识: 功能 速度调节:电调通过调整电流的大小和方向来控制电动马达的…

window系统安装node,配置环境变量npm指令

首先 你要在本地创建一个文件夹 来放node window我们直接访问node下载地址 根据自己的电脑配置 选择对应的版本 这里的话 我建议还是选择 .msi 文件 处理会方便一点 下砸好之后我们直接双击运行 然后 下一步 Next 然后 勾选下面的协议 然后 继续下一步 这个都没必要看 只能说…

Oracle-记OGG迁移项目问题与优化(5-6月)

背景: 5-6月使用oggexpdp将两套Oracle 11g从AIX7.1迁移到redhat7.9,数据量接近3T,本文主要记录ogg迁移过程中遇到的问题以及优化方法,希望对读者有所帮助 问题一:OGG数据一致性校验 使用OGG数据迁移,需要面对的一个大问题就是如何进行源端和目…

Java 实现关注微信公众号动态获取验证码

大家好,我是程序猿小张 前言 个人博客今天上线一个文章私密的功能,该功能需要通过关注公众号来获取验证码,通过正确的验证码才能来查阅文章,具体效果如下图。 我感觉还蛮有意思的就决定把这个写出来,供大家去使用&…

Web3.0数字货币有哪些?

Web3.0的到来为数字货币带来了全新的发展机遇,它不仅仅是加密货币的进化版,更是一种去中心化、可编程性和自治性的数字资产。 在这个新的数字经济时代,Web3.0数字货币成为了金融革命的核心。本文将介绍一些重要的Web3.0数字货币,…

基于SpringBoot+vue的新生宿舍管理系统设计与实

博主介绍: 大家好,我是一名在Java圈混迹十余年的程序员,精通Java编程语言,同时也熟练掌握微信小程序、Python和Android等技术,能够为大家提供全方位的技术支持和交流。 我擅长在JavaWeb、SSH、SSM、SpringBoot等框架…

基于Servlet的CRM客户关系管理系统

1.需求分析 客户是公司最宝贵的资源,为了更好的发掘老客户的价值,并开发更多新客户,公司实施客户关系管理系统。系统的功能是:通过这个系统完成对员工基本信息、客户基本信息、交往信息、客户服务信息的充分共享和规范化管理;通过对销售机会、客户开发过程的追踪和…

服务器配置静态IP

服务器配置静态IP 一、前期准备二、配置静态IP 将服务器配置为使用静态IP地址。这将使服务器拥有一个永久的IP地址,而不会在每次启动时更改。为此,您需要编辑网络配置文件并将服务器的IP地址添加到其中。详细步骤如下: 一、前期准备 请在配置…

Docter容器

轻量,高效,敏捷 本质是进程,所以才轻量,namespace隔离资源,cgroups资源限制 namespace 运行容器,100个容器争夺资源, 给每个容器分配多少资源 审计:你利用多少资源?技…

免费的CRM软件都有哪些功能?

有哪些免费好用的CRM软件推荐?Zoho CRM是免费的CRM客户管理软件。虽然限制了部分功能,但是依然可以管理客户关系,提高销售效率,实现快速增长。 联系人管理: 创建和管理联系人,记录他们的基本信息、交易历…

阿里云短信平台收费标准价格表

阿里云短信服务平台,阿里云短信0.032元一条,阿里云短信?阿里云短信怎么收费?阿里云短信多少钱一条,阿里云短信0.032元一条。新用户购买阿里云短信套餐包6.9元200条起,费用0.032元/条,阿里云短信…

轻量级的CRM系统有哪些优势

市面上的CRM客户管理系统多种多样,但并不是所有的CRM系统都适合您的企业——有些CRM过于复杂和昂贵,初创或小型企业无法负担。那么,有哪些好用的轻量级在线CRM系统? Zoho Bigin是初创或小型企业设计的轻量级在线CRM系统&#xff…