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) 直接在指定的位置弹出菜单,不阻塞程序执行。

相关推荐
会飞的拖把12 分钟前
Python 面向对象编程详解:从类与对象到动态属性方法
开发语言·python
大牧师44 分钟前
Nest.js 微服务入门教程
开发语言·javascript·后端·微服务·node.js·nest.js·nest
格林威1 小时前
C# 图像异步落盘存储:基于Channel 配合 ArrayPool 实现异步落盘
开发语言·人工智能·数码相机·机器学习·计算机视觉·c#·视觉检测
软件黑马王子1 小时前
11.缓存池优化:窗口布局
开发语言·前端框架·c#
深圳市益普科技有限公司1 小时前
半导体MES的数字孪生:虚拟调试如何把上线风险提前清零
java·开发语言
低代码布道师1 小时前
外包项目管理平台全栈实战课02搭建数据底座:Next.js + PostgreSQL + Prisma 7
开发语言·javascript·postgresql·全栈开发
格林威1 小时前
C# 图像使用AVX2指令集:使用OpenCvSharp实现字节图像解压缩速度和map_image算子速度提升
开发语言·图像处理·人工智能·计算机视觉·c#·视觉检测·工业相机
(Charon)1 小时前
【C++】网络缓冲区设计(四):epoll + Reactor中Buffer的完整读写流程
开发语言·c++
西西弗Sisyphus1 小时前
Qt 实现一个 Windows 启动项查看器
开发语言·windows·qt