赞
踩
部件的尺寸调整策略或拉伸策略sizePolicy有7个值,如果同一个布局中的不同部件设置了不同的拉伸策略策略,在整个布局空间拉伸时,它们会怎么进行拉伸处理呢?
在未设置拉伸因子的情况下,Qt中这些拉伸策略是有优先级的,经老猿验证其优先级从高到低排列如下:
1、 Expanding , MinimumExpanding 优先级第1;
2、QSizePolicy.Preferred 、QSizePolicy.Ignored、QSizePolicy.Minimum第2;
3、QSizePolicy.Fixed不拉伸第3;
4、QSizePolicy.Maximum第4。
其实在拉伸时QSizePolicy.Fixed和QSizePolicy.Maximum优先级相同,都不拉伸,但缩小时Fixed不变,因此将其分了个优先级高低。
在没有设置拉伸因子的情况下,如果两个不同优先级拉伸策略的部件在一个布局中, 优先级高的就会拉伸,优先级低的就不拉伸。如果是相同优先级的,则会同比例拉伸。
如果设置了拉伸因子,则应该按拉伸因子的比例进行拉伸,优先级则失去作用。.
同理, 如果两个控件水平大小策略一个为Expanding, 一个是MinimumExpanding, 这时拉伸窗体, 则两个控件均会拉伸.
博客地址:https://blog.csdn.net/LaoYuanPython
老猿Python博客文章目录:https://blog.csdn.net/LaoYuanPython/article/details/98245036
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。