QT Designer - 如何创建布局

QT Designer - How to create a layout

我是 QT 的新手,尤其是 QT Designer,我发现它非常不直观。

我试图在 Qt Designer 中实现以下布局。

解释:


布局:


但是 如果我应用上面所说的那些,我将得到这样的结果:

据我搜索,我可以使用 Lay Out Horizo​​ntally in SplitterLay Out Horizo​​ntally Vertically in Splitter 来保持我想要的纵横比,但我可以拆分应用程序,但我不想要那样。 谁能帮助我了解我该怎么做?或者唯一的方法是使用 C++?

我想你要找的是QGridLayout

在 QGridLayout 中,您可以决定每个小部件将占用多少行(只需拖动其边框)以及每个 row/column 的各种“权重”(参数称为 rowStretch or columnStretch)。

示例: 您的布局可以组成如下:

一个黄色的大矩形是第一个 QGridLayout(1 行 x 5 列),其中包含(从左到右):

  • 你的第一个蓝色元素(占1行1列);
  • 3 个 QGridLayouts 为绿色;
  • 你的第二个蓝色元素(占1行1列);

绿色的 QGridLayouts(2 行 x 2 列)是这样配置的:

  • 你的红色元素(占1行2列,rowStretch为2);
  • 你的第一个白色元素,(占1行1列,rowStretch为1);
  • 你的第二个白色元素,(占1行1列,rowStretch为1);

这样,红色和白色元素在垂直方向上的比例为 2 比 1,并且(因为它们一起占据蓝色元素的同一行)蓝色高度是红色 + 白色的总和。