• Qt 布局管理器


    布局管理器:

      ——提供相关类对界面组件进行布局管理

      ——能够自动排列窗口的组件界面

      ——窗口变化后自动更新组件的大小

    QBoxLayout布局管理器(可以相互嵌套)

      ——以水平或者垂直的方式进行管理界面组件

      ——垂直方式QVBoxLayout  

      ——水平方式QHBoxLayout

    测试代码:

      

    /*布局管理器*/
        layout1->addWidget(&Messege_Btn);
        layout1->addWidget(&FileDialog_Btn);
        layout1->addWidget(&FileDialogSave_Btn);
        layout1->addWidget(&ColorDialog_Btn);
        layout2->addWidget(&InputDialog_Btn);
        layout2->addWidget(&FontDialog_Btn);
        layout2->addWidget(&ProgressDialog_Btn);
        layout2->addWidget(&PrintDialog_Btn);
        layout->addLayout(layout1);//嵌套layout1
        layout->addLayout(layout2);//嵌套layout2
        layout->setSpacing(20);//设置间距
        this->setLayout(layout);

      

     布局管理器中的比例系数:

      ——默认以等比例的方式进行更新组件的大小

      ——可以自定义组件大小更新是的比例系数

      

    QGridLayout布局管理器(支持嵌套)

      ——以网格(二维)的方式管理界面组件

      ——行列控件大小比例系数设置。

     /*QGridLayout 布局管理器*/
        gridLayout->addWidget(&Messege_Btn,0,0);//将 Messege_Btn 加入gridLayout 0.0位置
        gridLayout->addWidget(&FileDialog_Btn,0,1);
        gridLayout->addWidget(&FileDialogSave_Btn,0,2);
        gridLayout->addWidget(&ColorDialog_Btn,0,3);
    
    //    gridLayout->addWidget(&InputDialog_Btn,1,0);
    //    gridLayout->addWidget(&FontDialog_Btn,1,1);
        Vlayout1->addWidget(&InputDialog_Btn);//将 InputDialog_Btn 加入Vlayout1 垂直管理器
        Vlayout1->addWidget(&FontDialog_Btn);
    //    gridLayout->addWidget(&ProgressDialog_Btn,1,2);
    //    gridLayout->addWidget(&PrintDialog_Btn,1,3);
        Vlayout2->addWidget(&ProgressDialog_Btn);
        Vlayout2->addWidget(&PrintDialog_Btn);
        gridLayout->addLayout(Vlayout1,1,0);//将 Vlayout1 嵌套到 gridLayout 1.0位置
        gridLayout->addLayout(Vlayout2,1,1);//将 Vlayout2 嵌套到 gridLayout 1.1位置
        /*设置列比例*/
    //    gridLayout->setColumnStretch(0,1);//设置第 0列比例为1
    //    gridLayout->setColumnStretch(1,3);//设置第 1列比例为3
        /*设置行比例*/
    //    gridLayout->setRowStretch(0,1); //设置第0行比例为1
    //    gridLayout->setRowStretch(1,3);//设置第0行比例为3
        this->setLayout(gridLayout); //启动布局管理器

      QForLayout布局管理器

      ——以表单(Form)的方式管理界面组件  

      ——表单布局中的标签组件相互对应的关系。

      

  • 相关阅读:
    ExtJs多级联动菜单的一种实现
    初学jquery之自学笔记(2)
    微软MVP评Silverlight的功能特性和价值
    利用XMLFormView在Web部件页中或者自定义页面中嵌入Infopath表单
    初学jquery之自学笔记(3)
    我想大声告诉你
    HTC G7 金卡 制作
    黑苹果配置
    我的Android 从 2.3开始! 开发环境搭建
    新台式机配置表
  • 原文地址:https://www.cnblogs.com/hjxzjp/p/12296025.html
Copyright © 2020-2023  润新知