gpt4 book ai didi

python - 让 PyQt5 + venv + qt5ct 正常运行时遇到问题

转载 作者:行者123 更新时间:2023-12-01 07:00:09 26 4
gpt4 key购买 nike

我正在开发一个小型 PyQT5 应用程序,我想在虚拟环境中运行它。现在,创建了 venv,并使用 pip 将所有必需的包安装到 venv 中,应用程序正在运行,并且通常工作正常。

但是,我对主题有疑问。现在,我使用 qt5ct 来管理我的计算机上的 QT 主题,但不幸的是,这似乎没有在 venv 中被识别。如果我在 venv 之外运行应用程序,控制台中输出的第一行是 qt5ct: using qt5ct plugin 并且应用程序的样式根据我在 qt5ct 中的选择进行设计。但是,当在 venv 中运行时,我没有得到这样的行,并且所有内容都有默认样式。

现在,我已经从虚拟环境中打印了 os.environ['QT_QPA_PLATFORMTHEME'] 并验证了它是否设置为 qt5ct 。看起来 qt5ct 根本没有被执行,我尝试在我的 venv bin 文件夹中符号链接(symbolic link) qt5ct 可执行文件,但是,它没有任何帮助。

有人知道如何使用 qt5ct 设置应用于在 python3-venv 中运行的 pyqt5 应用程序吗?

最佳答案

编译qt5ct时会生成3个文件:

  • qt5ct
  • libqt5ct.so:
  • libqt5ct-style.so

第一个是允许您配置 qt5ct 的应用程序,其他是插件。为了使 qt5ct 能够与从 pypi 安装的 PyQt5 一起使用,您必须将 libqt5ct.so 和 libqt5ct-style.so 复制到:

  • /path/of/your_venv/lib/python3.7/site-packages/PyQt5/Qt/plugins/platformthemes/libqt5ct.so
  • /path/of/your_venv/lib/python3.7/site-packages/PyQt5/Qt/plugins/styles/libqt5ct-style.so

分别。

如果您使用 pacman 安装了 qt5ct,则必须使用以下步骤:

$ cp /usr/lib/qt/plugins/platformthemes/libqt5ct.so /path/of/your_venv/lib/python3.7/site-packages/PyQt5/Qt/plugins/platformthemes/
$ mkdir /path/of/your_venv/lib/python3.7/site-packages/PyQt5/Qt/plugins/styles/
$ cp /usr/lib/qt/plugins/styles/libqt5ct-style.so /path/of/your_venv/lib/python3.7/site-packages/PyQt5/Qt/plugins/styles/

其中 /path/of/your_venv 是您的 venv 的路径。

关于python - 让 PyQt5 + venv + qt5ct 正常运行时遇到问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58675935/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com