QT 图片显示问题 5

voidImageViewer::open()//![1]//![2]{//QStringfileName=QFileDialog::getOpenFileName(th... void ImageViewer::open()
//! [1] //! [2]
{
// QString fileName = QFileDialog::getOpenFileName(this,
//tr("Open File"), QDir::currentPath());
QString fileName;//这个地方时我修改的。
fileName=":/home/linux/9day/picure/p4.png";//难道要写成p4.PNG?或者把:号去掉?
if (!fileName.isEmpty()) {
QImage image(fileName);
if (image.isNull()) {
QMessageBox::information(this, tr("Image Viewer"),
tr("Cannot load %1.").arg(fileName));
return;
}
//! [2] //! [3]
imageLabel->setPixmap(QPixmap::fromImage(image));
//! [3] //! [4]
scaleFactor = 1.0;

printAct->setEnabled(true);
fitToWindowAct->setEnabled(true);
updateActions();

if (!fitToWindowAct->isChecked())
imageLabel->adjustSize();
}
}
展开
 我来答
mileelove
2011-03-29 · TA获得超过454个赞
知道小有建树答主
回答量:183
采纳率:0%
帮助的人:324万
展开全部
汗一个。好久没有用过Linux了,不太清楚相对路径该怎么写了。
在window下面是这个样子的,你可以尝试下
//从资源文件中加载图片需要在最前面用 冒号 标识
QPixmap imageFromResource(":/index/image.png");
//假设 images 目录 存在于pro文件所在的目录中,则按照相对路径加载图片如下
QPixmap imageFromPath("images/image.png");
//上面这种方式等价于下面这种方式
QPixmap imageFromPath("./images/image.png");
lw2078
2011-03-29 · 超过10用户采纳过TA的回答
知道答主
回答量:41
采纳率:0%
帮助的人:29万
展开全部
QLabel *label=new QLabel (“ ”, 0);
QPixmap pm (“/home/linux/9day/picure/p4.png”) ;
Label->setPixmap(pm) ;
label->show ();

这样应该可以,也就是把你原来程序中的路径前的:号去掉,至于p4.PNG和p4.png都是一样的,系统都能识别出来。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式