2016-03-15 76 views
1

我是QT新手,我想要显示大量图像,并且能够从文件夹加载它们,我只有一个图像的代码,它工作正常,但想要对于许多图像相同的结果,这里是我的代码:从Qt文件夹加载图像

QString imagePath = QFileDialog::getOpenFileName(
      this, 
      tr("Open File"), 
      "", 
      tr("JPEG (*.jpg *.jpeg);;PNG (*.png);; BMP (*.bmp)") 
      ); 
imageObject = new QImage(); 
imageObject->load(imagePath); 
image = QPixmap::fromImage(*imageObject); 
scene = new QGraphicsScene(this); 
scene->addPixmap(image); 
scene->setSceneRect(image.rect()); 
ui->graphicsView->setScene(scene); 
+0

尝试利用二维码的支架,使其可读:) – bofredo

+0

使用* * QStringList QFileDialog :: getOpenFileNames(...)** –

回答

1

您可以使用打开的文件夹,这里只是snipsets:

const QString folderPath = QFileDialog::getExistingDirectory(this, tr("Image folder")); 
if(!folderPath.isEmpty()) 
{ 
    QDir dir(folderPath); 
    QStringList filter; 
    filter << QLatin1String("*.png"); 
    filter << QLatin1String("*.jpeg"); 
    filter << QLatin1String("*.jpg"); 
    dir.setNameFilters(filter); 
    QFileInfoList filelistinfo = dir.entryInfoList(); 
    QStringList fileList; 
    foreach (const QFileInfo &fileinfo, filelistinfo) { 
     QString imageFile = fileinfo.absoluteFilePath(); 
     //imageFile is the image path, just put your load image code here 
    } 
} 
+0

谢谢,它是非常有帮助的,但无法访问图像? – ner

+0

你是什么意思不能访问图像? – Apin