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

相关推荐
月华路6 小时前
G1 垃圾回收:脏卡队列、记忆集与并发精化线程机制
java·开发语言
gugucoding6 小时前
47. 【Java】Java内存模型(JMM)与可见性
java·开发语言
m0_380743876 小时前
从零调用 Claude 教程
开发语言·python·node.js
起床学FPGA7 小时前
AI回答问题之后,会自动跳到最下面的问题
开发语言·javascript·ecmascript
反转180度7 小时前
Qt 6 + C++17 实现 SFTP 批量部署:工业设备运维工具实战解析
运维·c++·qt
x_x-F8 小时前
网络数据从网卡到用户态:一场基于内存所有权转移的接力赛
开发语言·网络·php
名字还没想好☜8 小时前
Java 线上内存泄漏排查实战:jmap 导堆、MAT 找 GC Roots 与四类常见泄漏
java·开发语言·jvm·内存泄漏
码匠许师傅8 小时前
【C++ 面试真题】聊聊 C++ 的多继承与虚继承
开发语言·c++·面试
我不是疯子是傻子9 小时前
Qt CAN通信周期发送抖动?实测定时器精度校准与时间戳补偿方案
开发语言·数据库·qt
IT爱学堂10 小时前
尚硅谷 - 2025年3月Java+AI大模型应用开发
java·开发语言·人工智能