如何使用 PyQt 制作可变列网格

How to make a variable-column grid using PyQt

我正在尝试使用 Python 和 Qt4 显示一组图像缩略图。我的问题是我不想计算网格的列数,因此当调整应用程序大小时或我的缩略图变大时,列数会自动更改。 实际上我想使用 Qlabel,因为图像将具有文件名和可能的按钮。有简单的方法吗?

类似的东西:

您应该考虑使用 QGraphicsView。对于与任何内置小部件完全不同的真正自定义小部件,它是一个很好的构建块。它使用 model/view 架构,让您可以无限灵活地绘制每个项目的方式和位置,而不是依赖更有限的 QLayout 放置系统。

Brendan Abel's answer is the right and elegant way to use the power of Qt. However, if you find model-view architecture too heavy, I'd suggest you to use FlowLayout demonstrated in here.

实施起来相当容易,可能适合您的需要。