很多的时候,需要布局管理器的使用, 在此介绍一下布局管理器的使用,直接上代码

#include "widget.h"
#include "ui_widget.h"

Widget::Widget(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::Widget)
{
    ui->setupUi(this);

   QHBoxLayout * HLayout = new QHBoxLayout(this);
   HLayout->addStretch(2);  //添加占位符 占的比例是2
   HLayout->addWidget(ui->pushButton);
    HLayout->addStretch(1);
   HLayout->addWidget(ui->pushButton_2);
    HLayout->addStretch(1);
   HLayout->addWidget(ui->pushButton_3);
    HLayout->addStretch(2);

    HLayout->setStretchFactor(ui->pushButton,1);  //设置控件的比例
    HLayout->setStretchFactor(ui->pushButton_2,3);
    HLayout->setStretchFactor(ui->pushButton_3,1);
    ui->widget->setLayout(HLayout);   //将三个按钮的控件布局到 widget 上

    QGridLayout * overLayout = new QGridLayout(this);
    overLayout->addWidget(ui->widget);
    setLayout(overLayout);  // 将整个对画框进行布局
}

Widget::~Widget()
{
    delete ui;
}

出现的结果

QT 布局管理器的使用

界面布局的效果(两个效果一样的)

QT 布局管理器的使用

删除布局的代码 

delete rightLayout->layout();//删除布局

 

不明白的可以问我

相关文章:

  • 2021-09-08
  • 2022-01-13
  • 2021-04-20
  • 2021-09-12
  • 2021-10-21
  • 2021-04-17
  • 2021-04-28
猜你喜欢
  • 2021-08-02
  • 2021-11-13
  • 2021-10-10
  • 2022-12-23
  • 2021-11-10
相关资源
相似解决方案