Qt之QSizePolicy
每个控件都有上述属性,水平策略,垂直策略的含义,他是QSizePolicy类中的枚举常量
A. Fixed:控件不能放大或者缩小,控件的大小就是它的sizeHint。
B. Minimum:控件的sizeHint为控件的最小尺寸。控件不能小于这个sizeHint,但是可以
放大。
C. Maximum:控件的sizeHint为控件的最大尺寸,控件不能放大,但是可以缩小到它的最小
的允许尺寸。
D. Preferred:控件的sizeHint是它的sizeHint,但是可以放大或者缩小
E. Expanding:控件可以自行增大或者缩小
注:sizeHint(布局管理中的控件默认尺寸,如果控件不在布局管理中就为无效的值
水平伸展,垂直伸展的含义是
在整个布局中,模块之间的比例,例如,两个模块,QTreeWidget,QTableWidget在同一个layout中,一个水平伸展(HorizontialStretch)设置为1,另一个设置为2,则比例为1:2,类似layout中的属性
这是layout中的属性,horizontallayout和verticallayout中都只有一个这种属性,
而gridlayout中有两个(layoutRowStretch, layoutcolumnStretch),因为,在horizontallayout和verticallayout中控件只沿一个方向排列,而在gridlayout中控件沿两个方向都有,所以两个方向的比例都得设置
各个布局的含义
http://blog.****.net/jimmy2013_1_1/article/details/8598264
QBoxLayout:直线布局,可以规定排序的方向是从左到右还是从右到左,从上到下还是从下到上布局
QHBoxLayout :水平布局
QVBoxLayout :垂直布局
QGridLayout : 将空间划分为若干个行和列,并把子窗口部件放置到划分成的一个个小空间中
QFormLayout :表格布局把布局空间划分为两列,一列一般放标签,另一列一般用于放置LableEdit之类的窗口部件。
QStackedLayout:把一系列窗口部件排列成堆叠的形式,每次只能顶部的部件是可见的。