QString filePath = tr("F:\\MyCode\\QListWidget\\resourece");
QListWidget *listWidget_File = new QListWidget(this);
listWidget_File->setObjectName(QString::fromUtf8("listWidget_File"));
listWidget_File->setGeometry(QRect(0, 0, 0, 0));
listWidget_File->clear(); //保证每次进入listWidget_File的时候都会是空的
QDirIterator m_DirIterator(filePath, QDir::Files | QDir::NoSymLinks, QDirIterator::Subdirectories);
while(m_DirIterator.hasNext()){
QString tempFile = m_DirIterator.next();
listWidget_File->setIconSize(QSize(100, 100)); //设置QListWidget中的单元项的图片大小
listWidget_File->setResizeMode(QListView::Adjust);
listWidget_File->setViewMode(QListView::IconMode); //设置QListWidget的显示模式
listWidget_File->setMovement(QListView::Static); //设置QListWidget中的单元项不可被拖动
listWidget_File->setSpacing(10); //设置QListWidget中的单元项的间距
QPixmap objPixmap(tempFile); //生成图像objPixmap
//tempfile当中的/media/sd/PICTURES字符串删去,并返回剩余部分
tempFile=tempFile.remove(filePath, Qt::CaseSensitive);
//生成QListWidgetItem对象
QListWidgetItem *pItem = new QListWidgetItem(QIcon(objPixmap.scaled(QSize(100,100))),tempFile);
pItem->setSizeHint(QSize(100,120)); //设置单元项的宽度和高度
listWidget_File->addItem(pItem); //添加QListWidgetItem项
}
listWidget_File->setGeometry(NULL, NULL, 1024, 400);
https://blog.csdn.net/jimmyzj123456/article/details/9283909