Qt5 QString和QPixmap

时间:2013-06-08 00:51:19

标签: image qt label qstring qpixmap

我的图片没有显示:

QString champ("C:/champions/" + ui->comboBox->currentText() + "_1.jpg");
QPixmap image(champ);


ui->label_1->setPixmap(QPixmap(image));

我试着解决这个问题2个小时。请帮帮我 !对不起,如果我的英语不好,因为我是法国人^^。

1 个答案:

答案 0 :(得分:0)

Qt QPixmap pointer limit

http://qt-project.org/doc/qt-5.0/qtgui/qpixmap.html#details

就像我在上面的答案中提到的那样,使用

bool retVal = QPixmap::load(champ);

然后检查retVal以查看发生了什么。

if(retVal == false)
{
    qDebug() << "These are the supported formats:" 
             << QImageReader::supportedImageFormats();
    if(QFile::exists(champ) == false)
    {
        qDebug() << "Unable to find file" << champ;
    }
}

同时确保您的QPixmap不会超出范围。所以把它作为成员函数放在头文件中。否则它可能不存在于构造函数的末尾。

http://qt-project.org/doc/qt-5.0/qtgui/qimagereader.html#supportedImageFormats

http://qt-project.org/doc/qt-5.0/qtcore/qfile.html#exists

希望有所帮助。