上次做的图片浏览存在最大的缺陷是listView中不能以缩略图的方式显示图片文件,考虑到项目的进度我另辟蹊径了。看下面
Widget::Widget(QWidget *parent) : QWidget(parent), ui(new Ui::Widget){ ui->setupUi(this); num = 3; filePath = new QDir("/mnt/xuechao/src"); ui->label->setAlignment(Qt::AlignHCenter); ui->label->setAlignment(Qt::AlignVCenter); for(int i=0;ientryList().length();i++) { qDebug()< entryList().at(i); }}
这里主要用到了QDir类里的entryList()这个属性,返回整个目录的所有文件名,然后我们再把文件路径组合一下显示到label里就行了,值得注意的是链表的长度,否则
很容易出现段错误。
void Widget::on_pushButton_clicked(){ if(num>0) { num--; qDebug()<label->setPixmap("/mnt/xuechao/src/"+filePath->entryList().at(num)); }}void Widget::on_pushButton_2_clicked(){ if( num <= filePath->entryList().length()) { qDebug()< label->setPixmap("/mnt/xuechao/src/"+filePath->entryList().at(num)); num++; }}
简单的例子,在实际的项目中还可加个消息框来显示图片的名字,等等。