qt创建右键菜单,显示在鼠标点击处
引言
给窗口创建右键菜单,右键的时候,右键菜单出现在鼠标点击处。同时设置右键菜单的样式,右键菜单为圆角,起初设置样式的时候,右键菜单的背景在圆角边缘会出现黑色的方角,不能很好的显示为圆角,后来设置了右键菜单无标题栏,背景透明和固定大小后可以了。
实现
void LayoutListWidget::createRightMenu()
{m_menu = new QMenu(this);m_actionDel = new QAction(QStringLiteral("删除"),m_menu);m_menu->addAction(m_actionDel);m_actionModifyName = new QAction(QStringLiteral("修改名称"),m_menu);m_menu->addAction(m_actionModifyName);m_actionSceneLinkage = new QAction(QStringLiteral("场景联动"),m_menu);m_menu->addAction(m_actionSceneLinkage);//保存创建的右键菜单,初始所有的都没有显示
// m_isDisplayRightMenu.insert(m_menu,false);setRightMenuStyle();
}
void LayoutListWidget::setRightMenuStyle()
{m_menu->setWindowFlag(Qt::FramelessWindowHint);m_menu->setAttribute(Qt::WA_TranslucentBackground);//菜单圆角QString styleSheet;styleSheet.append("QMenu{font-size: 18px;font-family: Microsoft YaHei;""font-weight: 400;color: #FFFFFF;border-radius: 10px;""background-color: rgb(8, 7, 91);border: 1px solid #01B5EF;}""QMenu::item{width:178px;height:40px;""padding-left:28px;margin-top:25px;}"//设置与上边框界限的距离"QMenu::item:selected{background-color: #01E4EE;}");m_menu->setFixedSize(180,210);m_menu->setStyleSheet(styleSheet);
}
void LayoutListWidget::on_LayoutListWidget_customContextMenuRequested(const QPoint &pos)
{Q_UNUSED(pos);if (m_menu != nullptr && m_delId != 0) {m_menu->exec(QCursor::pos());//右键菜单在点击点位置}
}
上述代码实现了右键菜单的创建,样式的设置,以及点击右键的时候使右键菜单出现在鼠标点击处。
重点
1.右键菜单的样式为圆角,需要在设置样式前先设置右键菜单的没有标题,背景透明,固定大小;
2.右键菜单出现在鼠标右键点击处,使用自带的槽函数customContextMenuRequested(const QPoint &pos)。
qt创建右键菜单,显示在鼠标点击处相关推荐
- matlab无法右键,GUI右键菜单不能在鼠标右键的位置显示
罗老师,你好.我按照您书中第六章例子6.3.3编写了一个可以读取图片,读取图片后对图片做放大和移动的gui.我看到您使用get得到鼠标位置后就可以设置GUI右键菜单的位置,从而实现点击鼠标右键就可以在 ...
- 右键菜单显示项的可见度控制 c# 1614605595
右键菜单显示项的可见度控制 c# 1614605595 右键菜单情况 运行效果 让0号项目不可见 效果
- CAD二次开发C#.Net编程-CAD创建右键菜单
CAD二次开发&C#.Net编程-CAD创建右键菜单 private static ContextMenuExtension m_ContextMenu;//装载右键菜单public stat ...
- JS实现鼠标点击处烟花爆炸效果
JS实现鼠标点击处烟花爆炸效果(面向对象版) 程序由网上开源"JS实现放烟花效果"代码改编,实现在鼠标点击处出现烟花爆炸效果. 改编前 源码link https://github. ...
- Qt创建右键快捷菜单无法触发customContextMenuRequested()信号
在为listWidget组件添加右键快捷菜单时,已经编写了信号customContextMenuRequested()的响应槽函数,但是在该组件上点击右键并没有触发该信号 原因在于没有添加右键菜单策略 ...
- 跟我一起玩Win32开发(6):创建右键菜单
快捷菜单,说得容易理解一点,就是右键菜单,当我们在某个区域内单击鼠标右键,会弹出一些菜单项.这种类型的菜单,是随处可见的,我们在桌面上右击一下,也会弹出一个菜单. 右键菜单的好处就是方便,它经常和我们 ...
- html右键菜单背景图片,鼠标右键的普通背景怎么更换为漂亮的菜单背景?
当我们使用鼠标右键菜单的时候都只是单调的灰白色而已,那么想不想为你的鼠标右键菜单背景也设置一个自己喜欢的背景呢?下面教大家一个方法.怎样将鼠标右键的普通背景更换为漂亮的图片. 工具/原料 文件资源修改 ...
- Directory Opus12.6在win11下右键菜单显示问题
问题情况描述 Directory Opus是一个强大的文件管理软件,但其旧版本在win11(Windows 11 家庭版 21H2 22000.739)下存在一些问题. 对于图片.视频的右键菜单出现错 ...
- 在WPF中弹出右键菜单时判断鼠标是否选中该项
和上篇在WPF的TreeView中实现右键选定一样,这仍然是一个右键菜单的问题: 这个需求是在一个实现剪贴板的功能的时候遇到的:在弹出右键菜单时,如果菜单弹出位置在ListViewItem中时,我们认 ...
最新文章
- 浅析中科红旗的生与死
- IT公司100题-10-翻转句子中单词的顺序
- 关于HTML头二行文字的解释
- hdu oj1093题解
- MFC添加自定义消息及重写消息过程
- 利用Skywalking-netcore监控你的应用性能
- 互联网晚报 | 3月21日 星期一 |​ 科大讯飞5亿成立科技新公司;新能源车企称采购宁德时代电池成本上涨两万元...
- Python数据分析库pandas高级接口dt和str的使用
- linux 命令-全称
- 寒假CF1 C-龟龟
- 服装免费收银系统哪个好-云上铺会员管理软件
- 【引用】男人爱你的三个细节
- Monitor模式和AP模式下获取WiFi的CSI信号
- Unix/Linux编程:exec()族函数
- QT VS2019 OpenCV yolo4 摄像头识别人脸
- 谷歌浏览器突然翻译不了怎么办?
- vite2 antD 动态切换主题
- 四 【java基础】 程序流程控制- 分支结构
- 双线路带宽叠加后,指定网站走指定线路!
- 使用AWS MVP方案[Data Transfer Hub]从Global S3同步文件到中国区S3
热门文章
- 阿里云超算异构Spot集群,助力深势科技30%成本驱动MDaaS海量算力
- 淘宝直播在冲刺最复杂的人工智能技术!
- 下一代云原生应用制品管理平台,容器镜像服务企业版优惠进行时
- 深度学习文本分类在支付宝投诉文本模型上的应用
- Cloudera发布全球企业数据成熟度报告,混合云趋势中有效数据战略是关键
- 像搭“乐高”一样实现整合式网络安全体系
- Gartner预测:芯片短缺,十大汽车主机厂未来一半都将自主设计芯片
- Alluxio完成C轮5000万美元融资,新设中国区总部力拓国内市场
- Mendix发布全球低代码报告,中国软件与低代码发展远超全球
- unity三维地图的经纬度如何在二维地图上表示_接入C++版本recastnavigation寻路库到Unity/服务端中...