C++ QT、高级GUI、精美的上下文菜单
我正在做一个Qt项目,我想做一个奇特的右击上下文饼图。。。。菜单 就像图中的一样 吼叫 我正在使用QGraphicsSitem、QGraphicscene、QGraphicsView,并将背景设置为透明C++ QT、高级GUI、精美的上下文菜单,c++,qt,C++,Qt,我正在做一个Qt项目,我想做一个奇特的右击上下文饼图。。。。菜单 就像图中的一样 吼叫 我正在使用QGraphicsSitem、QGraphicscene、QGraphicsView,并将背景设置为透明 setAttribute(Qt::WA_TranslucentBackground); setStyleSheet("background: transparent ;border: none;"); 我想实现的是,当用户在圆上时,它是一个子菜单,然后会出现一个饼状菜单,但是 问题是: 不
setAttribute(Qt::WA_TranslucentBackground);
setStyleSheet("background: transparent ;border: none;");
我想实现的是,当用户在圆上时,它是一个子菜单,然后会出现一个饼状菜单,但是
问题是:
不幸的是,鼠标事件将不会发出,除非它接触我的QGraphicsView中的一个实心像素,所以当鼠标光标停留在子菜单上时,红色的饼图将出现,但只要我移动到饼图中的某个扇区,它将消失,因为我不再在橙色圆圈上悬停
还有其他好主意或解决方案吗,这样我可以在透明区域上获得鼠标事件(我将计算与橙色圆圈的距离,如果鼠标在范围内,饼图将保持显示)
谢谢。我想你可以这样做:
- 将鼠标悬停在橙色按钮上,子菜单出现
- 保持子菜单出现,直到您的鼠标悬停在nothing(无)或悬停在另一个圆形菜单上。当你将鼠标移动到子菜单->时,意味着你将鼠标悬停,所以子菜单仍然会在那里。若你们的子菜单都是一样的,那个么当你们将鼠标悬停在另一个圆圈上时,只需移动子菜单的位置,也许可以设置一些属性
- 确保您的橙色圆圈和子菜单重叠,以便将鼠标从橙色移动到子菜单不会触发“无悬停”