首页 > 解决方案 > 使用与另一个具有不同列数的 QGridLayout 相同的列间距

问题描述

我有QGridLayout5 列,固定宽度的小部件位于第 1 列和第 3 列,因此调整窗口大小将改变它们周围的填充。

我想在QGridLayout上面再写一个,但这次有 3 列,第三列一直延伸到最后。我似乎无法让它与其他布局相匹配,我想知道是否有什么我能做的。

这是盒子的图像。红色箭头是调整宽度,如果可能的话,我希望绿色箭头与之匹配。如果我将列拉伸设置为1|21|1|4它以相同的速率调整大小,但向右偏移有点远。

在此处输入图像描述

我还在学习 Qt,所以很高兴知道大多数人如何处理这样的问题。

标签: pythonqtpyqt5

解决方案


QGridLayout您应该将5 列嵌套在另一个QGridLayout.

  • 第一列将是空的,就像在 3 列网格中一样
  • 第二列将包含第一列控件的标签
  • 最后一列将包含嵌套网格
    • 第一列将包含第一行控件(没有标签)
    • 该网格的其余部分将与以前相同

这样你的控件应该对齐。如果要排列标签(考虑右对齐),则应在外部网格上使用 2 的列跨度


推荐阅读