我有一个三列布局的网页,但是我很难找到一种方法,使得三个流式列宽度均为33%。
我认为你需要的是这个:
void QBoxLayout::addWidget(QWidget * widget, int stretch = 0, Qt::Alignment alignment = 0)
将widget添加到此框布局的末尾,使用拉伸因子stretch和对齐方式alignment。
拉伸因子仅适用于QBoxLayout的方向,并相对于此QBoxLayout中的其他框和小部件。具有更高拉伸因子的小部件和框增长更多。
如果拉伸因子为0且QBoxLayout中没有其他拉伸因子大于零,则根据涉及每个小部件的QWidget:sizePolicy()分配空间。
对齐方式由alignment指定。默认对齐方式为0,表示小部件填充整个单元格。
根据这份简短的文档,您需要平等地使用拉伸因子。因此,您可以编写类似以下内容:
myLayout->addWidget(myWidget1, 1);
myLayout->addWidget(myWidget2, 1);
myLayout->addWidget(myWidget3, 1);
1,1,1
,或者对索引0、1、2分别将拉伸设置为1。 - ratchet freak