当启用导出 QT_QPA_PLATFORMTHEME=gtk2 时,Qt 应用程序在 Xubuntu 20.04 中加载非常慢

Arc*_*ahi 3 xubuntu qt5 20.04

我已经安装了qt5ct在 Qt 应用程序上应用 gtk2 主题(默认情况下它们遵循 Fusion 主题)。然而,当启用 gtk2 主题时,Qt 应用程序(我尝试过GNU OctaveBrightness Controller)需要花费太多时间来启动。

例如,亮度控制器在 qt5ct 中的 gtk2 主题中加载大约需要 25 秒,而在 Fusion 或任何其他主题下加载则需要 1-2 秒(我通过单击图标后查看手表来测量这一点)。

GNU Octave 也是如此。

如何解决这个问题?请让我知道是否需要发布任何日志。

qt5ct本身加载也很慢。

我之前在 Xubuntu 的早期版本中使用过qt5ct,速度要快得多。

DK *_*ose 5

qt如果尝试将应用程序的样式设置为与本机 GNOME 应用程序一致,那么在基于 GNOME 的Ubuntu 19.10+版本、其官方版本和衍生版本的全新安装中,应用程序的启动速度会更长。

无论出于何种原因,从 19.04 升级的用户都不会看到此问题。

无论如何,一种令人满意的解决方法是使用Kvantum。例如,请参阅在带有 Kvantum 的 Linux 上使用 Qt 应用程序的自定义主题(并在 GNOME 上修复 Qt5 主题)

如前面的链接所述,由于默认情况下未安装 Kvantum,因此可以使用以下命令在 20.04 上安装它

sudo apt install qt5-style-kvantum qt5-style-kvantum-themes
Run Code Online (Sandbox Code Playgroud)

可以使用 ppa:

sudo add-apt-repository ppa:papirus/papirus
sudo apt update
sudo apt install qt5-style-kvantum qt5-style-kvantum-themes
Run Code Online (Sandbox Code Playgroud)

之后,运行

echo "export QT_STYLE_OVERRIDE=kvantum" >> ~/.profile
Run Code Online (Sandbox Code Playgroud)

注销并重新登录。该链接还包含有关在系统范围内使用 Kvantum(使用export QT_STYLE_OVERRIDE=kvantum in /etc/environment)和卸载它的说明。