zoukankan      html  css  js  c++  java
  • Qt addStretch()详解

    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种类型),按照比例参数,分配长宽比

  • 相关阅读:
    js查找字符串中重复的子字符串
    未知盒子宽高使盒子垂直水平居中
    标准盒模型和怪异盒模型的差异
    Vue练习(跑马灯效果)
    node后端中MVC与前端中的MVVM之间的区别
    ES6中对Promise解析
    ES6中对箭头函数的使用
    ES6对map解析
    ES6中对Set解析
    ES6解构赋值全了解
  • 原文地址:https://www.cnblogs.com/invisible2/p/6843148.html
Copyright © 2011-2022 走看看