头文件声明
void contextMenuEvent(QContextMenuEvent *event); //第一种方式改主函数右键菜单选项
void MainWindow::contextMenuEvent(QContextMenuEvent *event) //重写菜单右键函数
{
Q_UNUSED(event); //避免编译器警告
QMenu menu;
//添加右键菜单的选项
QAction *p1 = menu.addAction("方法1:选项1");
connect(p1,&QAction::triggered,
[=]()
{
qDebug() << "选项1 被点击";
cout << "选项1 被点击";
}
);
menu.addAction("方法1:选项2");
menu.addAction("方法1:选项3");
//显示menu菜单并设置其显示位置为鼠标位置
menu.exec(QCursor::pos());
}
该文章展示了如何在Qt环境中重写contextMenuEvent函数,创建一个包含多个选项的右键菜单。当用户点击菜单项时,连接到相应的槽函数,处理用户选择的选项。例如,点击选项1会触发调试输出。
2699

被折叠的 条评论
为什么被折叠?



