繁体   English   中英

如何在Qt布局中调整项目大小?

[英]How to resize items in qt layout?

我目前开始尝试使用qt布局,但遇到一个问题:例如,如果我使用VBoxLayout ,那么每个项目都会获得与其他项目相同的空间,例如,它们将空间平均分隔。 但就我而言,我想拥有一件具有90%空间的物品,另一件拥有10%空间的物品。 我已经发现我可以使用sizePolicy ,但是如果我想在布局中调整布局的大小(例如,如果我在另一个布局中设置一个布局和一个项目),则没有找到。 因此:如何调整布局的大小?

出于这个原因,您可以使用QBoxLayout::setStretchFactor

此方法设置系数中每个小部件或布局应容纳多少空间。

您可以在那里传递QWidgetQLayout

您可以在此处阅读更多有关拉伸因子的信息

编辑:这是一个简单的示例,说明了它是如何工作的:

QFrame* f1 = new QFrame;
f1->setFrameStyle(QFrame::Box);
QFrame* f2 = new QFrame;
f2->setFrameStyle(QFrame::Box);
QWidget* w = new QWidget;
QVBoxLayout* l = new QVBoxLayout;
w->setLayout(l);
l->addWidget(f1);
l->addWidget(f2);
l->setStretchFactor(f1, 1);
l->setStretchFactor(f2, 2);
w->show();

结果:

在此处输入图片说明

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM