在 QT 样式表中使用相对 url

Using relative url in QT stylesheet

我正在处理一个 qt 项目,想设置所有图像文件的相关性,但我无法使用通常的父 url 参考访问图像。

image:url('../sources/status/status.png');

但是我可以使用图像的绝对路径加载图像。

最好使用Qt Resource System。您的资源依赖项将包含在您的可执行文件中,然后您不必共享文件夹树。

您可以使用资源 url 在您的 QSS 代码中设置图像。

使用您的所有图像创建资源,您可以使用 Qt Creator IDE 轻松设置它。如果你愿意,你可以添加自己的前缀以区别于其他资源。

<!DOCTYPE RCC><RCC version="1.0" prefix="/">
<qresource>
   <file>../sources/status/status.png</file>
   <file>../sources/status/example_1.png</file>
   <file>../sources/status/example_2.png</file>
   <file>../sources/status/example_3.png</file>
</qresource>
</RCC>

然后,如果您的前缀是“/”,则将其用于您的 QSS:

image:url(':/../sources/status/status.png');