QT资源文件 - 运行时不显示图像

Nic*_*ost 8 c++ resources qt image

我刚刚升级到QT Creator 5.3并创建了一个全新的QT Widgets应用程序项目,并且正在使用Microsoft VC++编译器.我所拥有的是一个添加了"logo.png"的资源文件(如果我双击它会在QT中打开),以及我正在尝试设置背景图像的标签.问题在于,无论我做什么,我都无法在程序运行时显示图像.我可以让它显示图像的唯一方法是不使用资源文件而是直接映射到文件(例如"c:/blah/blah/logo.png")

此外,如果我在UI设计器中设置背景图像,背景将显示在IDE中,但不会在我运行程序时显示.我已经尝试了20多种代码变体,包括资源文件别名以及直接将文件添加到项目中,似乎没有任何工作.

我不确定是否有一个我缺少的步骤,或者是否有一些东西我必须做才能让项目编译图像.

Resources.qrc

<RCC>
    <qresource prefix="/">
        <file>logo.png</file>
    </qresource>
</RCC>
Run Code Online (Sandbox Code Playgroud)

loginform.cpp

QPixmap pixmap = QPixmap (":/logo.png");
ui->label->setPixmap( QPixmap(pixmap));
Run Code Online (Sandbox Code Playgroud)

Project.pro

OTHER_FILES += \
    logo.png

RESOURCES += \
    Resources.qrc
Run Code Online (Sandbox Code Playgroud)

Nic*_*ost 11

经过无数个小时的试验,错误和挫折,我已经能够通过运行qmake来解决这个问题.

要做到这一点,我只需右键单击该项目并单击"运行qmake",然后突然出现图像错误(以及其他一些错误)!

  • 为什么qmake没有自动运行?!谢谢它也帮助了我。 (2认同)