QVBoxLayout是Qt中的一个布局管理器,用于在垂直方向上排列QWidget控件。它是QLayout类的子类。
使用QVBoxLayout,您可以将QWidget控件按顺序逐个添加到垂直布局中,并且每个控件会自动放置在前面的控件下方。您还可以使用addSpacing()、addStretch()等函数来添加间距和伸展项。
以下是一个简单的示例,演示如何使用QVBoxLayout:
#include <QtWidgets>
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
QWidget window;
QVBoxLayout *verticalBoxLayout = new QVBoxLayout(&window);
QLabel *label1 = new QLabel("Label 1");
QLabel *label2 = new QLabel("Label 2");
QLabel *label3 = new QLabel("Label 3");
verticalBoxLayout->addWidget(label1);
verticalBoxLayout->addWidget(label2);
verticalBoxLayout->addWidget(label3);
window.setLayout(verticalBoxLayout);
window.show();
return app.exec();
}
上述代码创建了一个QWidget窗口,然后创建了一个QVBoxLayout对象,并向其添加三个QLabel控件。最后,setLayout()函数被用于将该布局管理器应用于QWidget窗口。这使得QWidget窗口以垂直方向显示这三个QLabel控件。