首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >QT、高级GUI、花式上下文菜单

QT、高级GUI、花式上下文菜单
EN

Stack Overflow用户
提问于 2016-03-17 04:34:13
回答 1查看 485关注 0票数 0

我正在做一个Qt项目,我想做一个花哨的上下文派,右击...菜单。

就像图中的那个

波罗

我正在使用QGraphicsItem、QGraphicsScene、QGraphicsView,并通过以下方式设置背景透明

代码语言:javascript
运行
复制
 setAttribute(Qt::WA_TranslucentBackground);
 setStyleSheet("background: transparent ;border: none;");

我想要实现的是,当用户将鼠标悬停在圆圈上时,它是一个子菜单,然后会出现一个饼菜单,但是,

问题是:

不幸的是,鼠标事件不会发出,除非它触摸我的QGraphicsView的一个实体像素,所以当鼠标光标悬停在一个子菜单上时,红色的饼会出现,但只要我移动到饼中的一个扇区上,它就会消失,因为我不再悬停在橙色的圆圈上。

任何其他好的想法或解决方案,以便我可以让鼠标事件在我的透明区域(我将计算距离橙色圆圈,如果鼠标在范围内,饼将保持显示)

谢谢。

EN

回答 1

Stack Overflow用户

发布于 2016-03-17 13:12:11

我认为你可以这样做:

  • 将鼠标悬停在橙色菜单上并显示子菜单。
  • 会一直显示子菜单,直到鼠标悬停在任何位置或悬停在另一个圆形菜单上。当你将鼠标移到子菜单->时,它意味着你悬停在那里,所以子菜单仍然在那里。如果您的子菜单都是相同的,所以当您悬停另一个圆圈时,只需移动子菜单位置并可能设置一些属性。
  • 确保您的橙色圆圈和子菜单是重叠的,因此将鼠标从橙色移动到子菜单不会触发"hover nothing"
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36046397

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档