我想在我的Qt应用程序中显示很多图像,因为我创建了一个按钮,单击该按钮将访问计算机的用户并添加图像。我的问题是我不知道如何在应用程序中显示这些图像。
这是我的代码:
void Mainwindow::on_pushButton_pressed()
{
QStringList fileName = QFileDialog::getOpenFileNames(this,tr("Open Image"),
"C:/qt-win-opensource-src-4.5.0/bin/",
tr("Image Files(*.png *.jpg *.bmp *.avi *.gif)"));
iterator = new QStringListIterator(fileName);
label = new QLabel;
if(iterator->hasNext())
{
label->clear();
label->setPixmap(QPixmap(iterator->next()));
label->show();
}
}
答案 0 :(得分:1)
您应该为要显示的所有图像使用滚动区域。您可以根据您希望如何排列这些图像来设置布局,并使用QLabel
的实例显示它们。
iterator = new QStringListIterator(fileName);
label = new QLabel;
if(iterator->hasNext())
{
label->clear();
label->setPixmap(QPixmap(iterator->next()));
ui->scrollArea->layout()->addWidget(label); // need to add a scroll area widget in your ui file
// and set layout to it (horizontal, vertical, grid etc.)
}
这样,应该没问题,你的标签应该正确显示。