Qt创建右键菜单的方法
来源:互联网 发布:股票下单软件 编辑:程序博客网 时间:2024/06/02 12:22
编写Qt界面程序的时候,经常会用到右键菜单(ContextMenu),目前自己知道的创建右键菜单的方法有两种,
方法1:在mousePressEvent事件中判断鼠标按下的是否是右键,进而调用创建右键菜单的函数。
void Dialog::mousePressEvent(QMouseEvent *event)//鼠标按下事件{ if(event->button() == Qt::RightButton) { createContextMenu(); }}void Dialog::createContextMenu()//创建右键菜单函数{ QCursor cur=this->cursor(); QMenu *contextMenu = new QMenu(this); QAction *cutAction = new QAction(tr("&New"), this); cutAction->setShortcut(QKeySequence::New); QAction *copyAction = new QAction(tr("&Copy"), this); copyAction->setShortcut(QKeySequence::Copy); QAction *pasteAction = new QAction(tr("&Paste"), this); pasteAction->setShortcut(QKeySequence::Paste); contextMenu->addAction(cutAction); contextMenu->addAction(copyAction); contextMenu->addAction(pasteAction); contextMenu->exec(cur.pos());}
方法2:重新实现QWidget::contextMenuEvent()函数,
void Dialog::contextMenuEvent(QContextMenuEvent *event)//重写右键菜单{ QCursor cur=this->cursor(); QMenu *contextMenu = new QMenu(this); QAction *cutAction = new QAction(tr("&New"), this); cutAction->setShortcut(QKeySequence::New); QAction *copyAction = new QAction(tr("&Copy"), this); copyAction->setShortcut(QKeySequence::Copy); QAction *pasteAction = new QAction(tr("&Paste"), this); pasteAction->setShortcut(QKeySequence::Paste); contextMenu->addAction(cutAction); contextMenu->addAction(copyAction); contextMenu->addAction(pasteAction); //setContextMenuPolicy(Qt::ActionsContextMenu); contextMenu->exec(cur.pos());}
- Qt创建右键菜单的方法
- QT鼠标右键菜单的创建方法与示例
- Qt添加右键菜单的方法
- QT 创建鼠标右键菜单
- QT 创建鼠标右键菜单
- QT 创建鼠标右键菜单
- QT 创建鼠标右键菜单
- 右键菜单的创建
- 右键菜单的创建
- QT右键菜单的创建及相关问题解决
- Qt右键菜单的添加
- QT 创建托盘图标和右键菜单
- QT 创建托盘图标和右键菜单
- HTML5里原生的右键菜单创建方法
- 右键菜单的创建总结
- QT右键菜单、右键下拉菜单、各控件响应右键菜单方法简介 【百度空间】
- QT右键菜单、右键下拉菜单、各控件响应右键菜单方法简介 【百度空间】
- QT右键菜单、右键下拉菜单、各控件响应右键菜单方法简介(转)
- 对xib/nib, file's owner, first responder的理解
- Hi3531 SDK 安装以及升级使用说明
- C++模板类快速学习
- sudo在shell脚本执行的问题
- BZOJ 1821 [JSOI2010]Group 部落划分 Group 题解与分析
- Qt创建右键菜单的方法
- 最新的一个面试的算法题目——一个完全背包问题
- RedHat yum安装配置
- 将DataSet中的内容输出到Excel文件
- 让hibernate跑log4j
- MyEclipse使用经验总结
- C/C++ const 浅析
- Linux -C 的read 和 write函数
- HRBUST 1547 模拟链表