0

首先,我对 Qt 和 Qt Creator 还很陌生,所以如果这是一个愚蠢的问题,那就放轻松。

我正在练习使用 Qt Creator,玩弄 css 样式。特别是,我试图让菜单栏及其菜单看起来像这样(在 Windows 上):http: //i.stack.imgur.com/9lMnQ.png

然而,到目前为止我能得到的最接近的是:http: //i.stack.imgur.com/5Nlen.png

我在网上搜索过,看看是否有人尝试过这样的事情,但我找不到任何东西。

我能想到的唯一可能的解决方案是菜单栏项(没有底部边框)是否可以呈现在菜单上方,以便它们重叠,在它们重叠的宽度上覆盖其顶部边框。

如果这不起作用或不可能,或者无论如何,请建议任何其他解决方案/解决方法/黑客。

提前致谢!

4

1 回答 1

0

我认为唯一好的解决方案是避免任何技巧并创建一个新的小部件:

  • 创建一个继承自QWidgetwithQt::Popup属性的新类。
  • 将 aQMenu放入小部件的布局中。
  • 获取QMenuBar使用单击的项目的位置QMenuBar::getActionGeometry
  • 计算小部件和小部件中要放置在菜单栏项上的选项卡的位置。
  • 自定义小部件的形式,QWidget::setMask使其看起来像一个带有选项卡的矩形。
  • 显示您的小部件而不是QMenu.
于 2014-10-01T09:07:08.760 回答