是否可以在Qt中更改顶级菜单的外观?

时间:2012-04-27 21:02:09

标签: qt winapi qt4

我使用的是最新版本的Qt,并注意到在Windows上,菜单以非常老派的方式呈现(类似于他们在其他跨平台应用程序上看待的方式,如Firefox)。我希望菜单渲染(颜色,渐变等)呈现更现代的外观。是否可以在Qt中渲染菜单或修改菜单的方式?

1 个答案:

答案 0 :(得分:3)

我不确定您使用的是哪个版本的Qt或Windows,但在安装了Qt 4.8.1的Windows 7计算机上,默认菜单看起来很正常,就像任何其他Windows 7菜单一样。

要更改菜单的外观,您有两个广泛(简单)的选项:

  1. 使用QStyle将其更改为其他“原生”外观(使用QApplication::setStyle()QWidget::setStyle())。例如,您可以使它看起来像这样的Windows XP菜单:

    fileMenu->setStyle(new QWindowsXPStyle);
    
  2. 使用Qt style sheets自定义您希望如何呈现菜单。例如:

    fileMenu->setStyleSheet("background-color: red;");