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

  • 相关阅读:
    oracle 自动备份,删除历史
    oracle 系统语法
    myeclipse快捷键
    ANT教程
    新手 Spring 疑惑
    MyEclipse8.5整合Git (转)
    eclipse build path功能总结
    Apache Maven 入门篇(下)
    Mac OS下配置PHP Nginx PHP-FPM
    Python删除列表中元素
  • 原文地址:https://www.cnblogs.com/invisible2/p/6843148.html
Copyright © 2020-2023  润新知