Qt 布局

参考:https://blog.csdn.net/hiwoshixiaoyu/article/details/70859879

qt布局有几种:

1.水平布局QHBoxLayout

2.垂直布局QVBoxLayout

3.网格布局QGridLayout

4.表格布局QFormLayout

5.分组布局QStackLayout (  QStackedLayout类把子控件进行分组或者分页,一次只显示一组或者一页,隐藏其他组或者页上的控件)。 

这些方法可以嵌套使用。使用这些Qt布局管理类的另一个原因是,在程序、系统改变字体,语言或者在不同的平台上运行时,布局管理器能够自动调整窗体里所有控件的大小和尺寸。

 

layout的属性设置的含义:

1.layoutName:layout的名称

2.layoutLeftMargin:布局中元素左侧边距

3.layoutTopMargin:布局中元素上方边距

4.layoutRightMargin:布局中元素右侧边距

5.layoutBottomMargin:布局中元素下方边距

6.layoutSpacing:布局中元素之间的距离

7.layoutStetch:伸缩因子

  相对一个horizontalLayout中的两个QTextEdit控件按2:3的比例扩大

 

具体方法:

 

     把horizontalLayout中的layoutstretch属性设置为2,3即可,layoutstretch属性的意思是horizontalLayout里面的两个控件按2:3的宽度显示。

 

同理如果horizontalLayout里面放了三个控件,layoutstretch里面的初始值为0,0,0,意思是三个控件的比例是1:1:1。

 

      其他控件中的layoutstretch也是这个意思。

8.layoutSizeConstraint:设置大小约束条件

 

如果布局中需要保持控件的大小,则需要设置控件的minimumsize和maximumsize。

 

布局管理的三种方式:

1.绝对位置定位: label.setGeometry(10,10,20,20);

2.手工布局: 给出控件的绝对位置,但是他们的尺寸根据窗口的大小确定,可以通过重写窗体控件的resizeEvent()实现对子控件的大小设置。

3.布局管理器: 运用QHBoxLayout、QVBoxLayout、QGridLayout 、QFormLayout、QStackLayout布局。

sizepolicy:

1. Fixed: 大小不能改变

2. Minimum: 已经是最小, 不能再被缩小, 但能放大.

3. Maximum: 已经是最大, 不能再被放大, 但能缩小.

4. Preferred:  控件的sizeHint()是他的sizeHint, 能被缩小, 放大.

5. Expanding: 控件可以自行增大或者缩小.

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值