Qt基本布局(QLayout)

概述

Qt提供了QHBoxLayout类(水平排列布局),QVBoxLayout类(垂直排列布局),QGridLayout类(网格排列布局)等基本布局管理。它们之间的继承关系如下图
1327401-20180715181538856-856218345.jpg

布局中常用的方法有addWidget()和addLayout()

addWidget()方法用于加入需要布局的控件

void addWidget
(
    QWidget *widget,  //需要插入的控件对象
    int fromRow,  //插入的行
    int fromColum, //插入的列
    int rowSpan, //表示占用的行数
    int columSpan,  //表示占用的列数
    Qt::Alignment alignment=0  //描述各个控件的对齐方式
) 
addLayout()方法用于加入子布局

void QGridLayout::addLayout
(
    QLayout *layout,  //表示需要插入的子布局对象 
    int row,   //插入的起始行
    int column,   //插入的起始列
    int rowSpan,  //表示占用的行数
    int columSpan.  //表示占用的列数
    Qt::Alignment alignment = Qt::Alignment()  //指定对齐方式
)

注意1

LeftLayout=new QGridLayout();  //由于LeftLayout布局管理器不是主布局管理器,所以不用指定父窗口
QGridLayout *mainLayout=new QGridLayout(this);  //mainLayout实现主布局,所有要指定父窗口

注意2
QHBoxLayout默认采取的是以自左向右的方式顺序排列插入控件或子布局,也可以通过setDirection()方法设定排列的顺序,如

TopRightLayout->setDirection(QBoxLayout::RightToLeft);

QVBoxLayout默认采取的是以自上而下的方式顺序插入控件和子布局,也可以通过调用setDirection()方法设定排列的顺序
注意3
QHBoxLayout是水平布局,可以设定水平各个控件之间的间距

TopRightLayout=new QHBoxLayout();
TopRightLayout->setSpacing(20);  //设定各个控件之间的间距为20

转载于:https://www.cnblogs.com/Manual-Linux/p/9314402.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值