zoukankan      html  css  js  c++  java
  • Qt布局

    常用的布局方法
    1. 水平布局类 QHBoxLayout
    2. 垂直布局类 QVBoxLayout
    3. 网格布局类 QGridLayout

    QHBoxLayout
    对象横向排列开

    QHBoxLayout

    QVBoxLayout 对象纵向排列开
    向上伸缩

    addStretch

    QWidget *widget = new QWidget();
    QPushButton *button_all = new QPushButton(tr("总情况"));
    QPushButton *button_buy = new QPushButton(tr("入库"));
    QVBoxLayout *layout = new QVBoxLayout();
    layout->addWidget(button_all);
    layout->addWidget(button_buy);
    layout->addStretch(); //伸缩空间
    layout->setMargin(10); //页边距
    layout->setSpacing(10); //控件间隔
    widget->setLayout(layout);

    中间伸缩
    addStretch

    layout->addWidget(button_all);
    layout->addWidget(button_sale);
    layout->addStretch(); //伸缩空间
    layout->addWidget(button_record);

    两边伸缩
    addStretch

    layout->addStretch(); //伸缩空间
    layout->addWidget(button_all);
    layout->addWidget(button_sale);
    layout->addWidget(button_record);
    layout->addStretch(); //伸缩空间

    QGridLayout
    将控件放置到网格中布局,它本身会从父窗口或父布局中占据尽可能多的界面空间,然后把自己的空间划分为行和列,再把每个控件塞到设置好的一个或多个单元格中。通常情况下 QGridLayout不需要自己添加空白条 QSpacerItem,因为其他功能控件把各自的单元格占据之后,剩下没控件占据的单元格自然就是空的,空的格子默认里面什么都没有,也没有空白条

    QGridLayout

    QWidget *widget = new QWidget();
    QPushButton *button_all = new QPushButton(tr("总情况"));
    QPushButton *button_buy = new QPushButton(tr("入库"));
    QGridLayout*layout = new QGridLayout();
    layout->addWidget(button_all, 0, 0);
    layout->addWidget(button_buy, 1, 2);
    widget->setLayout(layout);

    拉伸函数

    QGridLayout::setColumnStretch(列码, 比例值);
    QGridLayout::setRowStretch(行码, 比例值);

    水平 1:2 拉伸
    setColumnStretch

    layout->addWidget(button_all, 0, 0);
    layout->addWidget(button_buy, 0, 1);
    layout->setColumnStretch(0, 1);
    layout->setColumnStretch(1, 2);
  • 相关阅读:
    线程池参数设置技巧
    线程池的七个参数
    bug篇——Windows启动redis报错Creating Server TCP listening socket 127.0.0.1:6379: bind: No error
    总结篇——git本地仓库上传更新到github
    实例篇——springboot自定义拦截器
    总结篇——从零搭建maven多模块springboot+mybatis项目
    bug篇——MySQL的时区问题
    工具类篇——时间处理Calendar类
    安装篇——nginx安装ssl模块转发https请求
    总结篇——nginx代理服务器
  • 原文地址:https://www.cnblogs.com/zhangxuechao/p/11709740.html
Copyright © 2011-2022 走看看