Qt右键菜单

先创建菜单指针:

cpp 复制代码
#include <QMenu>
QMenu* pMenu = nullptr;
pMenu = new QMenu(this);

设置菜单策略:

cpp 复制代码
this->setContextMenuPolicy(Qt::DefaultContextMenu);

创建动作并将动作添加进菜单,通过槽函数设置应该进行的相关动作:

cpp 复制代码
QAction* pA1 = new QAction(u8"动作一");
	pMenu->addAction(pA1);
	QAction* pA2 = new QAction(u8"动作二");
	pMenu->addAction(pA2);
	QAction* pA3 = new QAction(u8"动作三");
	pMenu->addAction(pA3);
	QAction* pA4 = new QAction(u8"动作四");
	pMenu->addAction(pA4);
	connect(pA1, &QAction::triggered, [=] {
		QMessageBox::information(this, u8"标题",u8"动作一");
	});
	connect(pA2, &QAction::triggered, [=] {
		QMessageBox::information(this, u8"标题", u8"动作二");
	});
	connect(pA3, &QAction::triggered, [=] {
		QMessageBox::information(this, u8"标题", u8"动作三");
	});
	connect(pA4, &QAction::triggered, [=] {
		QMessageBox::information(this, u8"标题", u8"动作四");
	});

重载contextMenuEvent方法:

cpp 复制代码
void contextMenuEvent(QContextMenuEvent* event) override;
void QtWidgetsApplication2::contextMenuEvent(QContextMenuEvent* event)
{
	pMenu->exec(QCursor::pos());
}
相关推荐
飞浪纪元[FWC–FE]4 分钟前
从零到一键绿:Qt 5.14.2 + VS2019 开发环境搭建、Kit 套件配置与构建错误修复完全手册
开发语言·qt
Wang's Blog16 分钟前
Java 项目实战:交友项目 - 联系人列表
java·开发语言·交友
我命由我1234520 分钟前
访客系统形式(有用户概念、无用户概念)
java·开发语言·前端·javascript·python·产品运营·产品经理
架构师伯子明21 分钟前
FFmpeg C++学习(一):编译和demo
开发语言·c++·学习
海域云SeaArea_24 分钟前
Windows Server 2008 R2 从零安装 IIS7.5(二):php.ini 配置
开发语言·windows·php
叼烟扛炮34 分钟前
[LangChain] 学习笔记(02):LCEL 链式调用与动态模型配置实战
服务器·开发语言·网络·笔记·学习·langchain
xixingzhe235 分钟前
图表中同比与环比的区别:看趋势还是看变化?
开发语言·python
andyweike43 分钟前
Swift
开发语言·ios·swift
纪念 2291 小时前
C++算法(六)
开发语言·c++·算法
ShineWinsu1 小时前
对于Qt:QCheckBox常见属性的详细解析
c++·qt·面试·笔试·gui·qcheckbox·多选框