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/9283909this