首页 > 解决方案 > 如何使 QWidget 自动垂直缩放到它的内容?

问题描述

我制作了一个名为 DropDownMenu 的 QT Designer 表单。本质上它只是一个 QWidget,里面有一个 QVBoxLayout。

DropDownMenu 有一个实用的添加按钮的功能。

QPushButton* DropDownMenu::AddButton(
        const QString& text)
{
    QPushButton* new_button = new QPushButton(text, this);
    m_ui->LayoutManager->addWidget(new_button);

    return new_button;
}

然后,我在 QT Designer 内的 MainWindow 中添加一个 QWidget,并将这个小部件提升到 DropDownMenu。然后我使用 AddButton 函数向这个新的 QWidget 添加按钮。

最终结果看起来像这样......

https://i.imgur.com/KCbaZJi.png

我想让容器根据布局内放置的按钮或小部件的数量进行缩放,但它们似乎只是被挤压在一起,以便它们适合父母的默认大小。

我怎样才能使父母缩放到所有孩子的大小?

标签: c++qt

解决方案


推荐阅读