QListView的setResizeMode,setViewMode,setFlow

参考: 

qt的QListwiget设置横向的排列_qlistwidget 横排-CSDN博客

希望实现类似的效果: 

QListView的setResizeMode,setViewMode,setFlow_第1张图片

感觉关键是搞清楚这三句:

    list.setViewMode(QListView::IconMode);
    list.setFlow(QListView::LeftToRight);
    list.setResizeMode(QListView::Adjust);

因为有很多模式可以组合。有待探索!!! 

代码:

    QListWidget list;
    list.setViewMode(QListView::IconMode);
    list.setFlow(QListView::LeftToRight);
    list.setResizeMode(QListView::Adjust);
    QString path=QApplication::applicationDirPath()+"/image.png";
    qDebug()<setText(QString::number(i+1));
        item->setIcon(QIcon(path));
        list.addItem(item);
    }
    list.show();

效果:

使用该语句:

list.setResizeMode(QListView::Fixed);

效果:

官方文档: 

QListView的setResizeMode,setViewMode,setFlow_第2张图片

一种是:items只在视图第一次被显示的时候被布局。

另一种是:每当视图被调整大小时,items就会被重新布局。

你可能感兴趣的:(qt,开发语言)