控件的sizePolicy說明控件在布局管理中的縮放方式。Qt提供的控件都有一個合理的缺省sizePolicy,但是這個缺省值有時不能適合 所有的布局,開發人員經常需要改變窗體上的某些控件的sizePolicy。一個QSizePolicy的所有變量對水平方向和垂直方向都適用。下面列舉 了一些最長用的值:
A. Fixed:控件不能放大或者縮小,控件的大小就是它的sizeHint。
B. Minimum:控件的sizeHint為控件的最小尺寸。控件不能小於這個sizeHint,但是可以
放大。
C. Maximum:控件的sizeHint為控件的最大尺寸,控件不能放大,但是可以縮小到它的最小
的允許尺寸。
D. Preferred:控件的sizeHint是它的sizeHint,但是可以放大或者縮小
E. Expandint:控件可以自行增大或者縮小
注:sizeHint(布局管理中的控件默認尺寸,如果控件不在布局管理中就為無效的值)
比如我們想制作如下的一個窗口,里面有三個控件,上面左右兩邊各一個群組控件,下面一個Tab控件,我們想放大窗口時,這三個控件也跟着拉伸,而且上面兩個群組控件拉伸的幅度要大於下面的Tab控件,這時候我們就可以利用Minimum這個功能,控件的sizeHint為控件的最小尺寸。控件不能小於這個sizeHint,但是可以放大。我們將Tab控件的vertical policy設置為Minimum,然后設置minimumSize如下所示,這樣全屏后,各個控件的拉伸幅度就不同了。