Qt常用基础控件总结—菜单控件(QMenu类)

菜单控件QMenu

QMenu 是Qt库中用于创建弹出式菜单的类,它通常出现在应用程序的顶部菜单栏、按钮的右键菜单或自定义上下文菜单中。QMenu 类提供了一系列方法来添加菜单项、子菜单以及关联槽函数,以便在用户选择菜单项时执行相应的动作。

常用函数如下:

构造函数:

QMenu(const QString &title, QWidget *parent = nullptr); 创建带有标题的菜单,父窗口用于确定菜单所在的上下文。

QMenu(QWidget *parent = nullptr)

添加菜单项:

addAction(QAction *);//添加一个 QAction 对象到菜单中。

addMenu(QMenu *);//添加一个子菜单到当前菜单。

addSeparator();//在菜单中添加一个分隔线,用于区分不同的菜单项组。

事件处理:

通过关联槽函数到 triggered(QAction *) 信号,可以在用户选择菜单项时执行相应操作。

显示菜单:

  • 使用 exec(QPoint globalPos) 弹出菜单并等待用户选择一个项,然后返回被选中项的 QAction 对象指针。

  • 使用 popup(QPoint pos) 直接在指定的位置弹出菜单,不阻塞程序执行。

相关推荐
小程故事多_8011 小时前
RAGFlow 分块策略全景与 Book 策略深度解析
java·开发语言·rag
阿里嘎多学长11 小时前
2026-06-09 GitHub 热点项目精选
开发语言·程序员·github·代码托管
枫叶丹411 小时前
【HarmonyOS 6.0】MDM Kit 新增限制策略深度解析:短信、蜂窝数据、飞行模式、通知消息与 NFC 管控
开发语言·华为·harmonyos
AC赳赳老秦11 小时前
技术文章素材收集自动化:用 OpenClaw 自动爬取行业资讯、技术热点、优质文章
运维·开发语言·python·自动化·wpf·deepseek·openclaw
神明不懂浪漫11 小时前
【第二章】HTML2——表格、表单标签
开发语言·经验分享·笔记·html
吴梓穆11 小时前
UE5 C++ 注册 开始重叠和结束重叠事件
开发语言·c++·ue5
AI玫瑰助手11 小时前
Python函数:内置函数(len/max/min/sorted等)详解
android·开发语言·python
咸鱼翻身小阿橙11 小时前
C# WinForms 控件学习项目
开发语言·学习·c#
右耳朵猫AI11 小时前
Go周刊2026W22 | GoReleaser 2.16、chi 5.3、tldx 1.4、wazero 1.12、Buf 1.70
开发语言·后端·golang
AI人工智能+电脑小能手11 小时前
【大白话说Java面试题 第105题】【并发篇】第5题:说一下 synchronized 关键字的底层原理?
java·开发语言·面试