Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
哪个Qt小部件用于实现图像缩略图浏览器(显示平铺)?_Qt_Widget - Fatal编程技术网

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

哪个Qt小部件用于实现图像缩略图浏览器(显示平铺)?,qt,widget,Qt,Widget,我希望从本质上复制这一点: 显示包含image+下标的自定义小部件最合适的Qt容器小部件是什么?我正在查看QTableView,它似乎应该有一组行/列,而我希望我的程序根据窗口宽度改变布局(这样就没有水平滚动),添加新的小部件应该使用addWidget(QWidget*w),而不是setWidget(int row,int column,QWidget*w)有没有比QTableView更好的组件(它需要为我的任务编写很多代码)?你应该使用QListWidget(或者QListView和子类qa

我希望从本质上复制这一点:


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

你应该使用
QListWidget
(或者
QListView
和子类
qabstractemodel
)并将其视图模式设置为
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"));
结果:

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"));

明确的QTableView, 使用自定义itemDelegate显示每个块,
实现自定义小部件以显示图像和文本标题

而不是QTableWidget/QListWidget?我目前正在尝试QListWidget,但在让它显示我的小部件时完全没有问题。QTableView意味着我必须手动处理大小调整以适当更改列数,这似乎太费事了。另外,为什么我需要委托?a我想做的是显示静态图片+文本小部件,没有更简单的方法来实现吗?QTableView的优点是可以自由处理数据模型和ItemWidget,因此需要定制datamodel和itemDelegate类的实现。这似乎需要做很多工作,但给了您更多的便利。通过使用itemDelegate,您可以轻松定制浏览器sytle和标题样式等等。我自己在我的应用程序中这样做。这确实有效。我想使用我自己的小部件作为列表项,但我想任何工作解决方案都比任何非工作解决方案好:)我想知道您是否找到了一个允许您实际使用自定义小部件的解决方案?