如何使用 QPixmap 以便在地址中只使用项目文件夹

How to use QPixmap so that only the project folder has to be used in the address

我正在使用 QPixmap 将图片输出到我的 GUI,目前我已经在使用它了:

QPixmap background("C:/Users/sam/OOC++/CarProject/Images/Background.png");

但我意识到,在这样做的过程中,如果我想在另一个地方使用这个代码,比如在别人的电脑上,这是行不通的,因为他们不一定把图片放在同一个地方。

所以我只是想知道是否有更好、更通用的方法来做到这一点。我希望有一个快捷方式,以便它可以直接转到正在使用的项目并自动查看那里,这样我就可以拥有类似的东西:

QPixmap background("Images/Background.png");

干杯!

您可以指定相对于可执行文件的路径,然后使用 QCoreApplication::applicationDirPath() 建立正确的道路。您可以使用安装命令在构建后自动复制图像。

或者更好的解决方案是将图像放在资源文件中。 然后您在代码中指定路径,例如 ex。 ":/Images/Background.png"

在文件路径前使用'u'。它将允许使用相对文件路径。

(u"Images/cancel.png")