一、介绍
菜单功能就像我们平时在Windows桌面右击出现的:
二、实现
继承QWidget类
重写菜单事件
void contextMenuEvent(QContextMenuEvent *event) override ;
在构造中添加:
// 设置菜单策略
this->setContextMenuPolicy(Qt::DefaultContextMenu);
在这个示例中,this
代表当前的窗口部件,通过调用setContextMenuPolicy()
函数,将上下文菜单策略设置为Qt::DefaultContextMenu
,即使用默认的上下文菜单。
需要添加头文件
#include <QMenu>
创建菜单示例:
// 创建菜单
QMenu* contextMenu = new QMenu(this);
contextMenu->addAction("菜单项1");
contextMenu->addAction("菜单项2");
在菜单事件里显示
菜单变量指针->exec(QCursor::pos());
可以结合信号与槽做一些功能扩展