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);
  • 相关阅读:
    我的Android平台“人人相册”客户端
    ADT 17及更高版本的混淆变更
    由glBitmap想到OpenGL编程涉及的坐标系
    版本控制之SVN
    工作了,要努力
    50 Most Frequently Used UNIX / Linux Commands (With Examples)
    linux命令分析SED (二)
    SeekBar也玩分段
    TSQL RAND()
    使用WebClient进行上传文件 [ZT]
  • 原文地址:https://www.cnblogs.com/zhangxuechao/p/11709740.html
Copyright © 2011-2022 走看看