设置最大最小值,级别最高
setMinimumSize();
setMaximumSize();
QLayout::SetDefaultConstraint; //设置部件的MinimumSize值
QLayout::SetFixedSize;      //主窗口大小设置为sizeHint();他无法改变大小。
QLayout::SetMaximumSize;     //设置窗口最大大小,不能再放大。
QLayout::SetMinimumSize;     //设置窗口最小大小,不能再缩小。
QLayout::SetMinAndMaxSize;    //设置窗口最大大小和最小大小。
QLayout::SetNoConstraint;    //设置部件不被约束。

 

则设定水平策略为:Preferred, 垂直策略为:Minimun
其它选项:Fixed 、Maximum、Expanding、Ignored
setSizePolicy ( QSizePolicy:: Preferred,QSizePolicy:: Minimum) ;

 

QHBoxLayout横向布局
//向布局中添加控件 
hboxLayout->addWidget(button1); 
hboxLayout->addWidget(button2); 
hboxLayout->addWidget(button3);
//间隔 
hboxLayout->setSpacing(60);
//实例QWidget 
widget = new QWidget(); 
//绑定布局 
widget->setLayout(hboxLayout); 
//绑定界面 
this->setCentralWidget(widget);

 

QGridLayout::addWidget(widget,row,column,rowSpan,columnSpan); 
row,column为控件占据的左上角单元格位置, 
rowSpan是控件占据的行数,colunmSpan是控件占据的列的个数。
rowSpan和colunmSpan默认值为1。

 

QGridLayout网格布局
//创建纵向布局 
gridLayout = new QGridLayout();
button1 = new QPushButton("按钮1"); 
button2 = new QPushButton("按钮2"); 
button3 = new QPushButton("按钮3");
//向布局中添加控件 
gridLayout->addWidget(button1,0,0,1,1); 
gridLayout->addWidget(button2,0,1,1,1); 
gridLayout->addWidget(button3,1,0,1,1);
//实例QWidget 
widget = new QWidget();
//绑定布局 
widget->setLayout(gridLayout); 
//绑定界面 
this->setCentralWidget(widget);

 

相关文章: