QT布局管理——QGridLayout
操作系统: 统信UOSv20 Qt版本: 5.11.3
一,简单介绍
QGridLayout获取可用的空间(通过其父布局或parentWidget()),将其划分为行和列,并将它管理的每个小部件放入正确的单元格中。再添加布局时需要指定行和列。
二,常用方法
1. 常用方法
三,使用介绍
1. 创建对象及基本设置
this->setGeometry(700, 300, 500, 50); QGridLayout *gridLayout = new QGridLayout(this); //在主界面创建网格布局 QPushButton *btn1 = new QPushButton("1"); //创建按钮 btn1->setMinimumSize(100, 30); //设置最小尺寸 btn1->setSizePolicy(QSizePolicy::Expanding,QSizePolicy::Expanding); //设置自动调整按钮大小 QPushButton *btn2 = new QPushButton("2"); btn2->setMinimumSize(100, 30); btn2->setSizePolicy(QSizePolicy::Expanding,QSizePolicy::Expanding); QPushButton *btn3 = new QPushButton("3"); btn3->setMinimumSize(100, 30); btn3->setSizePolicy(QSizePolicy::Expanding,QSizePolicy::Expanding); QPushButton *btn4 = new QPushButton("4"); btn4->setMinimumSize(100, 30); btn4->setSizePolicy(QSizePolicy::Expanding,QSizePolicy::Expanding); gridLayout->addWidget(btn1, 0, 0); //根据设置坐标将按钮添加到网格布局中 gridLayout->addWidget(btn2, 0, 1); gridLayout->addWidget(btn3, 1, 0); gridLayout->addWidget(btn4, 1, 1); gridLayout->setRowStretch(0, 1); //设置行比例 gridLayout->setRowStretch(1, 2); //1:2 gridLayout->setColumnStretch(0, 1); //设置列比例 gridLayout->setColumnStretch(1, 3); //1:3
第一行和第二行比例为1:2 ,第一列和第二列比例为1:3