码迷,mamicode.com
首页 > 其他好文 > 详细

Qt addStretch()

时间:2015-08-01 10:04:27      阅读:603      评论:0      收藏:0      [点我收藏+]

标签:qt   addstrech   c++   

addStretch函数,是在布局的时候用到。

函数原型: void QBoxLayout::addStretch ( int stretch = 0 )

作用:平均分配Layout

比如:

QVBoxLayout *buttonLayout = new QVBoxLayout;
buttonLayout->addStretch(1);
buttonLayout->addWidget(Button1);
buttonLayout->addStretch(1);
buttonLayout->addWidget(Button2);
buttonLayout->addStretch(1);
buttonLayout->addWidget(Button3);
buttonLayout->addStretch(6);

以上是buttonLayout的布局,addStretch将空白没有widget的地方均分成9分,然后按照参数的大小分配弹簧。

所以,带的参数是说明均分的比例。

再比如:

vlayout->addStretch(2); //添加弹簧,均分布局
vlayout->addWidget(label); //布局左侧风格栏
vlayout->addWidget(styleComboBox);
vlayout->addStretch(1);

这样的效果是:
技术分享

如果,vlayout->addStretch(2); 的参数改为1,效果是这样的:

技术分享

这样就一目了然了,一句话:按比例分配空余空间~~

同类型的函数还有 setStretchFactor()

layout->setStretchFactor(vlayout,1);
layout->setStretchFactor(edit,2);
layout->setStretchFactor(dragWidget,6);

这样就会按照 QBoxLayout 的类型(5种类型),按照比例参数,分配长宽比

版权声明:欢迎转载,注明出处就好!如果不喜欢请留言说明原因再踩哦,谢谢,我也可以知道原因,不断进步!!

Qt addStretch()

标签:qt   addstrech   c++   

原文地址:http://blog.csdn.net/scythe666/article/details/47183333

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!