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 小时前
数据结构:用栈实现队列
开发语言·数据结构
KaMeidebaby12 小时前
卡梅德生物技术快报|噬菌体筛选:噬菌体筛选工程化优化方案:基于侵染全链条参数调控与水环境应用验证
java·开发语言·人工智能·机器学习·spark
geovindu12 小时前
go: Floyd-Warshall Algorithms
开发语言·后端·算法·golang
CoderYanger12 小时前
视频裁剪+缩放+自动添加水印脚本(Python版)
开发语言·后端·python·程序人生·职场和发展·音视频·学习方法
酷酷的身影12 小时前
Managers/APConfigManager.cs
开发语言·ui·c#
拳里剑气13 小时前
C++算法:优先级队列
开发语言·c++·算法·优先级队列
小七在进步13 小时前
数据结构:用队列实现栈
开发语言·数据结构
从零开始的代码生活_13 小时前
C++ 模板入门:函数模板、类模板与实例化机制
开发语言·c++·后端
luj_176821 小时前
残熵算法实时化三大瓶颈突破
c语言·开发语言·网络·经验分享·算法
不听话坏1 天前
Ignition篇(下 一) 动态执行前的事情
开发语言·前端·javascript