在用QT编程时,有时候要实现鼠标右键弹出菜单的功能.下面代码演示鼠标右键弹出菜单.
1.新建一个QT工程,点击MainWindow.ui,鼠标右键Go to slot.....,添加customContextMenuRequested(const QPoint &pos)事件
2.找到属性页中的contextMenuPolicy,把DefaultContextMenu改成CustomContextMenu.保存关闭MainWindow.ui
3.在on_MainWindow_customContextMenuRequested(const QPoint &pos)函数体添加一下代码
void MainWindow::on_MainWindow_customContextMenuRequested(const QPoint &/*pos*/)
{
//创建菜单对象
QMenu *pMenu = new QMenu(this);
QAction *pNewTask = new QAction(tr("新建任务"), this);
QAction *pEditTask = new QAction(tr("设置任务"), this);
QAction *pDeleteTask = new QAction(tr("删除任务"), this);
QAction *pToolRenName = new QAction(tr("改名工具"), this);
QAction *pToolEdot = new QAction(tr("设置工具"), this);
QAction *pToolDelete = new QAction(tr("删除工具&