找不到QPixmap的图像

时间:2015-07-18 11:10:28

标签: c++ image qt pixmap

如果单击按钮,我希望在同一窗口中显示图像。但无论图像是在同一目录中还是记下整个路径,都无法找到图像。我看到了几种整合图片的方法,并认为这是最好的方法:

MyApp::MyApp(QWidget *parent)
    : QWidget(parent)
{
    QPushButton *button = new QPushButton("&Randomize!");
    gitterlayout->addWidget(button, 5, 0);

    connect(button, SIGNAL(clicked()), this, SLOT(Randomizer()));
}

void MyApp::Randomizer()
{

    QLabel* bild = new QLabel;
    QPixmap pixmap("question.png"); // the important part, the picture is in my project folder
    if(!pixmap.isNull())
    {
        bild->setPixmap(pixmap);
        bild->show();
    }
    else
    {
        qDebug() << "Cannot find picture"; // I always get this message
    }

    /* I want this question image to appear because once you click on the button, 
       a text will be copied to the clipboard and you can't see it until you paste it 
       (I left it out for this topic) */
}

如果我使用QPixmap pixmap("C:/myproject/question.png");(完整路径)它也不起作用。

1 个答案:

答案 0 :(得分:1)

因为Qt默认使用构建文件夹(在本例中为“C:\\ build-myproject-5.4.2-debug”)作为工作文件夹(如果你运行的话,可以使用build-myProject-5.4.2-release)发布模式)。您可以通过切换到项目模式和balabala来更改它。或者只是将你的照片放入该工作文件夹。在Windows上,路径分隔符应该是'\'而不是'/',这通常会导致很多麻烦。

在Qt创建者运行时,所有资源都应该放在这里。