使用QT4的QItemDelegate显示视图中图像的缩略图的最佳方法是什么?

具体来说,当从非常大的图像文件(> 500MB)生成pixmaps时,如何阻止项pixmaps阻塞?

任何人都可以链接到一些实现此目的的示例代码吗? 然后,也许这不是寻找Qt特定代码的地方。

===============>>#1 票数:4 已采纳

如果你在任何委托方法(paint,draw ......)中生成像素图,那你就错了。
尝试仅生成一次缩略图(在工作线程上,如果可能,甚至可能不在运行时),并让委托只显示适当的角色。
如果在运行时执行此操作,则会显示默认图片,直到您生成缩略图(如Web浏览器处理尚未下载的图片)。

  ask by Thomi translate from so

未解决问题?本站智能推荐:

2回复

如何将图像显示为缩略图

我有一个QTreeView来显示硬盘驱动器和目录。 我也有一个QListView来显示图像文件,如下所示: 但我想将图像显示为缩略图,如下所示: 我的代码: 不幸的是,我不知道将图像视图从图标更改为缩略图的方法是什么。
2回复

使用QItemDelegate在QTableView中显示其他数据

我有一个QTableView与QSqlTableModel连接。 在第一列中,只有以这种格式的日期: 2010-01-02 我希望此列以此格式显示日期(但不更改实际数据): 02.01.2010 我知道我必须为这个列创建一个QItemDelegate,但我不知道如何读取现有数据并用不
3回复

Qt为QTableView使用自定义QItemDelegate

我按照Qt提供的Spin Box Delegate教程,尝试实现我自己的QItemDelegate 。 它将用于指定QComboBox以表示QTableView单元格中的数据,但它无法正常工作。 我最大的问题是我不知道我的QItemDelegate会被利用。 当使用ite
1回复

QItemDelegate和QStyledItemDelegate有什么区别?

这两个类都为模型中的数据项提供显示和编辑工具。 QStyledItemDelegate是更新的,关于QItemDelegate的Qt文档声明: 请注意,QStyledItemDelegate已经接管了绘制Qt项目视图的工作。 我们建议在创建新委托时使用QStyledItemDele
2回复

在重新实现的QItemDelegate绘画功能中,setFont不起作用

我已经为QTreeWidget重新实现了paint()函数,我想将第二列的数据显示为粗体,但是它不起作用。 我该如何解决? 我附上了问题的屏幕截图,下半部分应加粗
1回复

具有自定义小部件的QItemDelegate

我的QTableView和QItemDelegate类遇到问题。 我的代表为一个专栏创建了一个简单的组合框,一切正常。 对于第二列,我需要一个在单个小部件中具有两个组合框的小部件。 我在QItemDelegate编写了以下代码,只是为了清楚QItemDelegate ,这仅显示了我的第
1回复

QItemDelegate中编辑器的大小

我有一个自定义的Delegate,它是从QItemDelegate子类化的,它在第一列中提供了QComboBox,在所有其他列中提供了QLineEdit。 editTrigger已设置为selectClicked。 我希望组合框覆盖QTableView中的整个单元格。 但是,现在它只
2回复

Qt如何管理从函数QItemDelegate :: createEditor()返回的Widget指针的内存

我正在检查Qt示例Spin Box Delegate示例。 在这个例子中 后期如何删除指针编辑器? 删除是否由QItemDelegate析构函数完成? 但是QItemDelegate的析构函数不是虚拟的。 有人可以帮助我解释一下它是如何工作的吗? 我不能在QtCreator
1回复

如何关闭由自定义QItemDelegate :: createEditor()创建的编辑器

我创建了一个自定义项目委托,该委托使用户可以编辑文件路径列表: 我已经通过自定义类DirEdit实现了这一点。 现在,提交选择的路径,并在用户按下Enter键时关闭编辑器,但是我想补充两种情况,即在用户不必按下Enter键时应关闭编辑器: 当用户通过激活组合框条目(通过单击或
1回复

如何为QTreeView中的特定行创建自定义QItemDelegate?

如何使自定义QItemDelegate像上图所示。 这是一个QTreeView 。 我要自定义并添加QItemDelegate的最后一个元素 目前,我只有绿色的separator并想在分隔线下方添加一个QCheckBox 。 如何实现这种行为? 问题是:如何将Separat