AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / ubuntu / 问题 / 1298146
Accepted
MrMeszaros
MrMeszaros
Asked: 2020-12-08 02:45:54 +0800 CST2020-12-08 02:45:54 +0800 CST 2020-12-08 02:45:54 +0800 CST

GTK 主题在 Qt 启动应用程序上无法正常工作

  • 772

设置

当 Qt 应用程序(KeePassXC、AntiMicroX)自动启动(通过自动启动)时,不会应用 GTK 主题。

  • 所有应用程序都是通过标准apt包安装的(我知道快照主题问题)。
  • 我在 Ubuntu 上20.04,我使用 Yaru dark gtk 主题。
  • 要将 GTK 主题应用于 Qt 应用程序,我执行了以下操作:
    • 安装了qt5-style-pluginsapt 包(及其所有依赖项)
    • 添加了一行/etc/environment:QT_QPA_PLATFORMTHEME=gtk2
    • 如果我手动启动应用程序,这将正常工作

额外的摆弄表明,在冷启动时,主题永远不会被正确应用,但是,在重新启动时,它有时确实有效。

问题

  • 如何确保正确使用深色 gtk 应用程序主题?

  • 我会假设当自动启动发生时,某些设置没有加载,因此会损坏。这些应用程序是否需要等待某种“服务” ?

  • 我应该尝试增加延迟吗?

autostart themes gtk qt 20.04
  • 2 2 个回答
  • 1286 Views

2 个回答

  • Voted
  1. Best Answer
    MrMeszaros
    2020-12-16T12:54:22+08:002020-12-16T12:54:22+08:00

    是什么让它发挥作用

    为自动启动桌面文件添加了 1 秒的启动延迟(在 中~/.config/autostart/):

    [Desktop Entry]
    ...
    X-GNOME-Autostart-Delay=1
    

    这使得应用程序在登录后 X 会话正确初始化后启动。不需要其他任何东西(除了初始设置)。

    笔记

    • QT 配置工具(在qt5ctapt 包中提供)是可行的,但不是必需的。

      • 如果已安装,它会添加一个 X 会话配置/etc/X11/Xsession.d/99qt5ct,如果未设置,则将其QT_QPA_PLATFORMTHEME设置为qt5ct。
      • 它支持更广泛的 Qt 主题配置。我用了一个最小的~/.config/qt5ct/qt5ct.conf:
      [Appearance]
      icon_theme=Numix-Circle
      standard_dialogs=gtk2
      style=gtk2
      
    • 为了调试应用程序的环境,可以使用这个 shell 命令检查(注意,我使用的是 fish 而不是 bash):strings /proc/(pidof keepassxc)/environ | grep QT

    • 要调查环境变量的设置位置,可以使用以下命令:

      # system wide - this was quick
      grep QT_QPA_PLATFORMTHEME --recursive /etc/*
      # per user - this was super slow on my system (*khm* steam *khm*)
      grep QT_QPA_PLATFORMTHEME --recursive ~/*
      
    • 资料来源:

      • 此问题下的评论
      • 如何确定环境变量的来源?
      • 如何在启动时延迟特定程序?
    • 2
  2. Serge Stroobandt
    2021-11-06T20:47:08+08:002021-11-06T20:47:08+08:00

    在 Xubuntu 20.04 LTS 上

    首先,安装Qt5配置工具

    $ sudo apt install qt5ct
    

    /etc/X11/Xsession.d/56xubuntu-session然后,通过在前面插入一个哈希来注释掉以下行:

    sudo nano /etc/X11/Xsession.d/56xubuntu-session
        # QT5 apps to use GTK style
        #export QT_QPA_PLATFORMTHEME=gtk2
    

    现在,注销并重新登录。Menu使用→ Settings→所做的更改Qt5 Settings将立即生效。

    • 0

相关问题

  • 如何仅在 GNOME 中使程序自动启动

  • 如何在启动时运行脚本?

  • 我可以使用哪些工具和技术来制作 GTK 主题?

  • 如何更改 GDM 中的登录屏幕主题?

  • 如何获取和安装更多主题、图标和指针?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何运行 .sh 脚本?

    • 16 个回答
  • Marko Smith

    如何安装 .tar.gz(或 .tar.bz2)文件?

    • 14 个回答
  • Marko Smith

    如何列出所有已安装的软件包

    • 24 个回答
  • Marko Smith

    无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗?

    • 25 个回答
  • Martin Hope
    Flimm 如何在没有 sudo 的情况下使用 docker? 2014-06-07 00:17:43 +0800 CST
  • Martin Hope
    Ivan 如何列出所有已安装的软件包 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    La Ode Adam Saputra 无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗? 2010-11-30 18:12:48 +0800 CST
  • Martin Hope
    David Barry 如何从命令行确定目录(文件夹)的总大小? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher “以下软件包已被保留:”为什么以及如何解决? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford 如何删除 PPA? 2010-07-30 01:09:42 +0800 CST

热门标签

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve