要实现m_VL上对齐,你可以在添加水平布局到垂直布局之前,将垂直布局的对齐方式设置为Qt::AlignTop。以下是修改后的代码示例:
m_VL->setAlignment(Qt::AlignTop); // 设置垂直布局的对齐方式为上对齐
for (const QString& str : lsWhiteList) {
QHBoxLayout *hBoxLayout = new QHBoxLayout();
Form *itm = new Form(this, widgetType);
itm->setShowStr(str);
itm->setObjectName(str);
hBoxLayout->addWidget(itm);
m_VL->addLayout(hBoxLayout);
itm->adjustSize(); // 调整Form控件大小
itm->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding); // 设置itm的大小策略
}
在这个示例中,我们通过调用 m_VL->setAlignment(Qt::AlignTop)
将垂直布局 m_VL 的对齐方式设置为上对齐。然后按照你原有的逻辑,在循环中添加水平布局和控件到垂直布局中。
这样做就可以让 m_VL 上对齐,并保证添加的控件从顶部开始填充。
内容由零声教学AI助手提供,问题来源于学员提问