我正在尝试在缩略图模式下实现类似于文件资源管理器的布局。项目位于网格中,它们之间的距离固定,当您调整主窗口大小时,项目会重新定位以适合。
例如,在一个小窗口上,您有:
i1 i2 i3 j1 j2 j3 k1 k2 k3
但是当窗口变宽时,项目变成:
i1 i2 i3 j1 j2 j3 k1 k2 k3
如果你让窗口更宽,项目变成:
i1 i2 i3 j1 j2 j3 k1 k2 k3
我正在尝试尽可能简单地实现它,也许只使用默认类?...
如果你放了无数个项目,HBoxLayout 不会溢出;他们只是无限排队。
GridLayout 无能为力,因为在您先放置项目后,在调整窗口大小后,您必须清理布局,重新计算项目数量,使用新顺序重新填充布局。它不会自动重新定位项目。
另一种方法是将项目放在 Qt3 样式的 TableWidget 中。但那是一样的;调整窗口大小后,您已经计算了新窗口中适合多少项目,清理表格并重新填充。
还有固定位置方法。您将项目放在固定位置并在每次调整窗口大小后移动它们......这很头疼。
有没有人尝试过类似的东西 - 浏览器或图像查看器?您是如何解决这个问题的?
最佳答案
我认为您需要考虑执行 FlowLayout 之类的操作从示例集中。请注意,有一个 python port 。
关于Qt 动态布局,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9117807/