QPixmap 的问题
qdbje 2010-09-28 06:20:54 大家好!
现有读取QPixmap的函数两个个函数getPixmap1 和getPixmap2
/////////////getPixmap1///////////////
QPixmap getPixmap1(QString path)
{
QPixmap pixmap;
if(!path.isEmpty())
{
pixmap.load(path);
}
return pixmap
}
//////////////getPixmap2//////////////////
QPixmap getPixmap2(QString path)
{
QPixmap pixmap;
QByteArray pData;
QFile *file=new QFile(path);
file->open(QIODevice::ReadOnly);
pData=file->readAll();
if(!pixmap.loadFromData(pData))
{
qDebug()<<"error in loadFromData";
}
return pixmap
}
有一个数据结构
QList<QPixmap> pixmapList;
foreach( .... path)
{
QPixmap tmp =getPixmap2(paht);
pixmapList<< temp.scaled(size);
}
后显示这些数据这个pixmapList
for(int i=0; i<pixmaplist.size();i++)
{
painter->drawPixmap(....,,pixmapList.at(i*));
}
现状是,使用getPixmap1可以正常显示图片
而使用getPixmap2 显示的那些图片均为最后一张。
请问我应该如何修改,在板子上(4.6.1)有这个问题,在linux下4.6.2的版本下,没有这个问题。