QT 中通过相对路径导入图片遇到QPixmap::scaled: Pixmap is a null pixmap 的解决办法
#include "TitleUi.h"
#include "ui_TitleUi.h"
TitleUi::TitleUi(QWidget *parent)
: QWidget(parent)
, ui(new Ui::TitleUi)
{
ui->setupUi(this);
ui->logo->setPixmap(QPixmap(":/image/logoicon.ico").scaled(40,40));
}
TitleUi::~TitleUi()
{
delete ui;
}
用QPixmap导入图片一直报错,QPixmap是空值,实际上这就是因为图片的路径不对,需要注意的是,这里的相对路径,不是根据文件间的位置来确定的,而是根据.qrc里面的文件路径来决定的。
比如我将图片放在了qrc的/new/pex目录下,尽管相对于TitelUi.cpp,图片就是在":/image"目录下,但是这没有用处,必须使用qrc的":/new/pex/image/logoicon.ico"才可以。
更改之后才加载成功。
或者将qrc文件的路径改为"/",也可以加载成功。
原文地址:https://blog.csdn.net/weixin_74027669/article/details/140200031
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!