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

  • 相关阅读:
    Unity3D性能优化之资源导入标准和属性设置篇
    博客主题-Next风格
    Pytorch 搭建 LeNet-5 网络
    CIFAR数据集解读
    Mnist数据集解读
    博客主题——cnbook
    博客主题——element v2
    更换清华镜像源
    图像插值技术——双线性插值法
    PASCAL VOC2012数据集解读
  • 原文地址:https://www.cnblogs.com/invisible2/p/6843148.html
Copyright © 2020-2023  润新知