Qt QVBox布局:如何在固定高度的框中划分布局

Qt QVBoxLayout: How to divide the layout in fixed height Boxes?

本文关键字:布局 高度 划分 QVBox Qt      更新时间:2023-10-16

我想按以下方式划分我的窗口

    Build a vertical layout
    -------------------------
    |                       |
    -------------------------
    |                       |
    |                       |
    |                       |
    |                       |
    |                       |
    |                       |
    -------------------------

使用 QVBoxLayout。我想始终保持这个比例。我将禁用重新调整窗口大小。现在我有以下代码。

QVBoxLayout baseLayout = new QVBoxLayout(this);
QLabel *widget = new QLabel(NULL);
widget->setStyleSheet("background-color: rgb(0, 39, 118)");
widget->setGeometry(0,0,400, 30);
widget->setPixmap(QPixmap("Logo-Large.gif"));
baseLayout->addWidget(widget);

这会将窗口分成相等的部分。我无法使用表单设计器,因为我正在动态构建此 UI。

QVBoxLayout 上是否有任何属性可用于实现此目的?或者使用此QVBoxLayout是完全错误的,如果是这样,请提出替代方案。

感谢和问候,阿图。

要使 QVBoxLayout 在两个 elememt 之间保持固定的比例,请在 addWidget 中为它们提供拉伸参数。N 的拉伸参数是另一个拉伸参数 Y 的 x 倍,将使相应的小部件的高度比另一个小部件高 x 倍。