qt从文件中遍历图片并显示,遍历出来了图片名,但是只会显示最后一张图,大家帮我看看

QPixmap pixmap;
QDir dir("/home/yueshang/Picture/");
dir.setFilter(QDir::Files | QDir::NoSymLinks);
QString fileInfo;// file name
QFileInfoList list=dir.entryInfoList();//list information
for(int i=0;i<list.size();i++){

    QFileInfo fileinfo=list.at(i);//each file information
    fileInfo=fileinfo.fileName();//get file name

    qDebug()<<fileInfo;
    QString pathname="/home/yueshang/Picture/"+fileInfo;// path and file name
    QLabel *label=new QLabel;
    //label->setPixmap(pathname);
   // ui->viewlabel->addWidget(label);
    QFile picture(pathname);
    QByteArray pic_array;
    if(picture.open(QIODevice::ReadOnly)){
        pic_array=picture.readAll();
        //QPixmap pixmap;
        pixmap.loadFromData(pic_array);
        ui->viewlabel->setPixmap(pathname);
        picture.close();
    }

    //*******延时***********
     QTime n=QTime::currentTime();
     QTime now;
     do{
         now=QTime::currentTime();
     }while(n.msecsTo(now)<=200);
     //****************************

你可以打印下 list 中的各个文件路径,界面显示看不出效果,有可能是因为延时的间隔问题,你调整到 1 秒试试!