Qt综合使用布局管理器(QVBoxLayout,QHBoxLayout,QGridLayout)

一般界面设计都会有主布局,主布局一般都采用垂直布局(QVBoxLayout),因为界面大都自上而下浏览观看,才符合人类习惯,
布局和布局之间我们都可以通过addSpacing(int)去调整,布局内容可通过setContentsMargins(int left,int top,int right,int bottom)调整

Example:


Widget::Widget(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::Widget)
{
    QVBoxLayout* mainlayout = new QVBoxLayout();
    QGridLayout* layout = new QGridLayout();
    QLabel* l1 = new QLabel("Name(N)");
    QLineEdit* name = new QLineEdit();
    QLabel* l2 = new QLabel("Sex(S)");
    QComboBox* sex = new QComboBox();
    sex->addItem("Man");
    sex->addItem("Woman");
    sex->setCurrentIndex(0);
    QLabel* l3 = new QLabel("Age(A)");
    QSpinBox* age = new QSpinBox();
    age->setMinimum(0);
    age->setMaximum(10);
    QLabel* l4 = new QLabel("Email(E)");
    QLineEdit* email = new QLineEdit();
    layout->addWidget(l1,0,0,1,1);
    layout->addWidget(name,0,2,1,5);
    layout->addWidget(l2,1,0,1,1);
    layout->addWidget(sex,1,2,1,5);
    layout->addWidget(l3,2,0,1,1);
    layout->addWidget(age,2,2,1,5);
    layout->addWidget(l4,3,0,1,1);
    layout->addWidget(email,3,2,1,5);
    mainlayout->addLayout(layout);
    mainlayout->addSpacing(50);
    QHBoxLayout* hlayout = new QHBoxLayout();
    QFontComboBox* font = new QFontComboBox();
    QPushButton* submit = new QPushButton("Sumbit");
    hlayout->addWidget(font);
    hlayout->addWidget(submit);
    QVBoxLayout* vlayout = new QVBoxLayout();
    QLineEdit* le = new QLineEdit();
    vlayout->addLayout(hlayout);
    vlayout->addWidget(le);
    vlayout->addSpacing(10);
    vlayout->setContentsMargins(10,10,10,10);
    layout->setContentsMargins(10,10,10,10);
    mainlayout->addLayout(layout);
    mainlayout->addLayout(vlayout);
    setLayout(mainlayout);
    ui->setupUi(this);
}

Run:

这里写图片描述

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值