哪个Qt小部件用于实现图像缩略图浏览器(显示图块)?

时间:2013-01-01 22:15:23

标签: qt widget

我希望基本上复制这个:

enter image description here

用于显示包含image +下标的自定义窗口小部件的最合适的Qt容器窗口小部件是什么?我正在看QTableView它似乎应该有一定数量的行/列,而我希望我的程序根据窗口宽度改变布局(这样就没有水平滚动),以及添加新小部件应该使用addWidget(QWidget * w),而不是setWidget(int row, int column, QWidget * w)。有没有比QTableView更好的组件(需要为我的任务编写很多代码)?

2 个答案:

答案 0 :(得分:40)

您应该使用QListWidget(或QListView和子类QAbstractItemModel)并将其查看模式设置为IconMode

示例:

m_listeWidget->setViewMode(QListWidget::IconMode);

m_listeWidget->setIconSize(QSize(200,200));

m_listeWidget->setResizeMode(QListWidget::Adjust);

m_listeWidget->addItem(new QListWidgetItem(QIcon("../earth.jpg"),"Earth"));
m_listeWidget->addItem(new QListWidgetItem(QIcon("../tornado.jpg"),"Tornado"));
m_listeWidget->addItem(new QListWidgetItem(QIcon("../ics.jpg"),"Wallpaper"));

结果:

enter image description here

答案 1 :(得分:0)

绝对是QTableView, 使用自定义itemDelegate呈现每个块, 实现自定义小部件以显示图像和文本标题