在qt中怎么用代码将wideget的布局设置为栅格布局 并对布局中的控件按在固定的地方
时间: 2024-02-06 20:09:07 浏览: 106
在 Qt 中使用栅格布局(QGridLayout)可以方便地将窗口分割为行和列,并且可以在每个单元格中添加控件。以下是一个简单的示例代码,演示如何在 Qt 中使用栅格布局:
```cpp
#include <QApplication>
#include <QGridLayout>
#include <QLabel>
#include <QPushButton>
#include <QWidget>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
// 创建一个 QWidget 作为根窗口
QWidget *window = new QWidget;
window->setWindowTitle("Grid Layout");
// 创建栅格布局
QGridLayout *layout = new QGridLayout;
// 在第一行第一列添加标签控件
QLabel *label1 = new QLabel("Label 1");
layout->addWidget(label1, 0, 0);
// 在第一行第二列添加按钮控件
QPushButton *button1 = new QPushButton("Button 1");
layout->addWidget(button1, 0, 1);
// 在第二行第一列添加标签控件
QLabel *label2 = new QLabel("Label 2");
layout->addWidget(label2, 1, 0);
// 在第二行第二列添加按钮控件
QPushButton *button2 = new QPushButton("Button 2");
layout->addWidget(button2, 1, 1);
// 将栅格布局设置为 QWidget 的布局
window->setLayout(layout);
// 显示 QWidget 窗口
window->show();
return a.exec();
}
```
在这个示例中,我们创建了一个 QWidget 作为根窗口,并使用 QGridLayout 创建了一个栅格布局。然后,我们在栅格布局中添加了四个控件,分别是两个标签和两个按钮。最后,将栅格布局设置为 QWidget 的布局,并显示 QWidget 窗口。
如果您想要控件固定在栅格布局的某个位置,只需要将控件添加到该位置即可。例如,在上面的示例中,我们将 label1 添加到第一行第一列的位置,因此它将始终位于该位置。
阅读全文