c++ - Qt 从内部拉伸(stretch)父窗口?

标签 c++ qt

我有一个窗口,中间有一个标签,标签上下还有其他小部件。我想将标签拉伸(stretch)到任意高度,从而调整窗口大小并将小部件推开而不是将它们相交。是否有内置功能?

编辑:我在所有小部件所在的位置添加了一个布局,但是当我展开其中一个时,它会将其他小部件推到一个角落而不调整窗口大小。

最佳答案

您可能没有添加布局。 这是一个带有 QVBoxLayout 的示例,它将把您要添加的小部件放在彼此之上。

#include "class.h"
#include <QPushButton>
#include <QLabel>
#include <QVBoxLayout>

Class::Class(QWidget *parent) : QWidget(parent)
{
    QVBoxLayout* layout = new QVBoxLayout;

    QPushButton* button1 = new QPushButton("dummy1");
    QPushButton* button2 = new QPushButton("dummy2");
    QLabel* label = new QLabel("label");

    layout->addWidget(button1);
    layout->addWidget(label);
    layout->addWidget(button2);

    setLayout(layout);
}

编辑:如果你真的想让你的标签把所有东西都推开,你可以在 layout->addWidget(label); 的上方和下方添加 layout->addStretch();; 在代码中

关于c++ - Qt 从内部拉伸(stretch)父窗口?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32034768/

相关文章:

c++ - g++ 链接器错误 : undefined reference

c++ - qt中什么时候应该将子对象声明为其父类的成员变量?

c++ - isDown() 与 isChecked() 的区别

c++ - 如何绘制环绕圆圈的文字?

c++ - QObject 多重继承

c++ - Qt 中的窗口模板(或者基本上是面向对象的 Windows)

c++ - OpenCV C++ 单应 RANSAC

javascript - 如何在 Qt Creator 中的 main.cpp 文件之外声明函数

Qt嵌套QGraphicsItem坐标

c++ - QSettings 子类没有任何键