Qt样式表,从filepath的背景图像

时间:2014-09-30 13:10:42

标签: qt qtstylesheets

到目前为止我找到的所有示例都引用了资源文件中的背景图像。类似的东西:

 QFrame {
     background-image: url(:/images/header.png);
 }

我想知道,有没有办法直接从文件系统中使用文件?类似的东西:

     background-image: url("C:\temp\foo.jpg"); ????
     background-image: file("C:\temp\foo.jpg"); ????

我尝试过所有类型的网址,但没有一个可行。我是否总是要在资源中添加文件?

1 个答案:

答案 0 :(得分:9)

您不一定需要将文件添加为资源。试试这个例子:

QFrame{background-image: url("C:/temp/foo.jpg");}

请注意标准斜线,就像您在网址中使用的那样 - 他们不是Windows'回斜线。例如,这不起作用:

QFrame{background-image: url("C:\\temp\\foo.jpg");} /* Won't work! */

视窗' QSS中的反斜杠无效,即使你将它们转义也是如此。

您还可以使用相对路径:

QFrame{background-image: url("temp/foo.jpg");}

但要小心,因为路径在运行时相对于CWD,用户可能会更改。