由于我更新到 Ubuntu 17.04,Qt5 应用程序(例如 Qt Creator)将不再使用 GTK 主题。我尝试使用qt5ct更改它,但它只有样式Fusion和Windows可用,即使包qt5-gtk-platformtheme安装。
如何解决这个问题?
编辑:我正在使用 Unity。
Qt5 应用程序的外观和感觉由平台主题和样式决定。平台主题负责图标、字体等,样式控制小部件的呈现方式。我想您会发现您的应用程序(例如 Qt Creator)使用 GTK3 平台主题作为标准。
从Qt5.7开始就出现了这个问题。在此版本中,GTK2 平台主题和样式被删除并替换为 GTK3 平台主题。我最近一直在与 Qt 开发人员进行讨论,似乎没有 GTK3 风格来补充平台主题,目前也没有计划在未来实现这一点。因此,在 Ubuntu 上,默认样式是使用 GTK3 平台主题的“Fusion”。
有几种方法可以添加原生样式,如下所示:
qtstyleplugins可以在此处下载。不幸的是,GTK2 风格与 GTK3 平台主题不兼容。如果要使用 GTK2 样式,则必须使用 GTK2 平台主题。这意味着您的对话框等在 Ubuntu 17.04 中看起来不是原生的。但是,您可能更喜欢它而不是“融合”。QGnomePlatformavailable here和adwaita-qtavailable here。这在使用 Ubuntu Gnome 时提供了完全原生的外观和感觉。对于 Qt Creator,我不是 100% 确定它是否使用全局主题/样式位置。您可能必须将它们安装在{Qt_installation_folder}\Tools\QtCreator\lib\Qt\Plugins\platformthemes\和 中{Qt_installation_folder}\Tools\QtCreator\lib\Qt\Plugins\styles\。
除了qt5ct你还需要安装qt5-style-plugins包,那么你应该在qt5ct中获得'gtk2'主题
sudo apt-get install qt5-style-plugins
Run Code Online (Sandbox Code Playgroud)
而且,按照该qt5ct文档,不要忘了设置QT_QPA_PLATFORMTHEME=qt5ct在/etc/X11/Xsession.d/56xubuntu-session和/或/etc/environment
| 归档时间: |
|
| 查看次数: |
31506 次 |
| 最近记录: |