拥有固定大小列的 QWidget 网格的最佳方法是什么?

What's the best way to have a grid of QWidget with fixed size column?

我正在尝试用 Qt 构建这个 QWidget :

  1. | Q标签00 | Q标签01 | Q按钮 |
  2. | QLabel 10 | QLabel 11 | (这里什么都没有) |
  3. | QLabel 20 | QLabel 21 | (这里什么都没有)|

目前我已经用 QGridLayout 完成了,问题是我想要第一列和最后一列具有固定宽度,而 QGridLayout 没有这个功能。实际上,第一列和最后一列会根据 QLabels 01、11 和 21 的大小展开。

是否有最佳方法在特定列上设置固定值,或者我是否遗漏了 QGridLayout 上的某些内容?

尝试QGridLayout::setColumnStretch...

my_grid_layout.setColumnStretch(0, 0);
my_grid_layout.setColumnStretch(1, 1);
my_grid_layout.setColumnStretch(2, 0);

以上应该会导致网格布局将所有 extra 宽度与第 1 列相关联。