布局管理器中的addWidget()函数。
如QGirdLayout::addWidget(),定义QGirdLayout layout;layout->addLayout(widget, row, column, rowSpan, columnSpan);其中widget是要插入布局中的子窗口部件,(row, column)是由该部件所占用的左上角单元格,rowSpan是该部件要占用的行数,columnSpan是该部件要占用的列数。如果省略了这些参数,则参数rowSpan和columnSpan将会取默认值1。
addStretch()调用是告诉布局管理器,它将会占满布局中的这一处空间。通过添加一个拉伸项,就相当于告诉布局管理器,需要占用两个部件间多余的部分。
如果不设置每个部件的大小,在布局管理器中会用默认值处理每个部件的尺寸,所以比如同一个布局中的按钮大小都是一样的。在这些情况下,如果我们需要设置我们的某些部件特定的大小,我们就需要通过改变要摆放的部件的大小尺寸策略和大小提示来调整布局。
一个窗口部件的大小策略会告诉布局系统应该如何对它进行拉伸或者压缩。
一个QSizePolicy既包含一个水平分量也包含一个垂直分量。以下是一些常用取值:
Fixed的意思是该窗口部件的大小不能被拉伸或者压缩。窗口部件的大小尺寸总是保持为其大小提示的尺寸。
Minimum的意思是该窗口部件的大小提示就是他的最小大小。
Maximum的意思是该窗口部件的大小提示就是他的最大大小。
Preferred的意思是该窗口部件的大小提示就是它比较合适的大小。
Expanding的意思是可以拉伸和压缩该窗口部件,并且它特别希望能够变长变高。