文章目录

  • 1 Qt中的QGridLayout
    • 1.1 QGridLayout布局管理器
    • 1.2 QGridLayout布局管理器的嵌套

1 Qt中的QGridLayout

1.1 QGridLayout布局管理器

QGridLayout布局管理器:

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

QGridLayout中的比例系数设置:

QGridLayout示例代码:

void Widget::testGridLayout1()
{QGridLayout* layout = new QGridLayout();TestBtn1.setText("Test Button 1");TestBtn1.setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);TestBtn1.setMinimumSize(160, 30);TestBtn2.setText("Test Button 2");TestBtn2.setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);TestBtn2.setMinimumSize(160, 30);TestBtn3.setText("Test Button 3");TestBtn3.setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);TestBtn3.setMinimumSize(160, 30);TestBtn4.setText("Test Button 4");TestBtn4.setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);TestBtn4.setMinimumSize(160, 30);layout->setSpacing(10);layout->addWidget(&TestBtn1, 0, 0);layout->addWidget(&TestBtn2, 0, 1);layout->addWidget(&TestBtn3, 1, 0);layout->addWidget(&TestBtn4, 1, 1);layout->setRowStretch(0, 1);layout->setRowStretch(1, 3);layout->setColumnStretch(0, 1);layout->setColumnStretch(1, 3);setLayout(layout);
}

QGridLayout中的组件可以根据需要跨越多个网格,示例代码如下:

void Widget::testGridLayout2()
{QGridLayout* layout = new QGridLayout();TestBtn1.setText("Test Button 1");TestBtn1.setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);TestBtn1.setMinimumSize(160, 30);TestBtn2.setText("Test Button 2");TestBtn2.setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);TestBtn2.setMinimumSize(160, 30);TestBtn3.setText("Test Button 3");TestBtn3.setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);TestBtn3.setMinimumSize(160, 30);TestBtn4.setText("Test Button 4");TestBtn4.setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);TestBtn4.setMinimumSize(160, 30);layout->setSpacing(10);layout->addWidget(&TestBtn1, 0, 0, 2, 1);layout->addWidget(&TestBtn2, 0, 1, 2, 1);layout->addWidget(&TestBtn3, 2, 0, 1, 2);layout->addWidget(&TestBtn4, 3, 0, 1, 2);setLayout(layout);
}

1.2 QGridLayout布局管理器的嵌套

布局管理器的嵌套:

  • QGridLayout支持嵌套其它布局管理器成为其管理对象。

参考资料:

  1. QT实验分析教程

Qt中的QGridLayout相关推荐

  1. QT中的QGridLayout布局

    QGridLayout布局参考: https://blog.csdn.net/mynameislinduan/article/details/77893298

  2. Qt中如何使窗口隐藏/最小化到托盘

    Qt中如何实现自己的托盘功能,Qt自带的demo也很明了,这里我们就来实现自己的一个托盘... 功能:窗口最小化后或者点击"hide"按钮将窗口隐藏到托盘. 通常最小化的窗口会在任 ...

  3. QT中OpenGL开发起步

    OpenGL中环境搭建 近期由于需要做一个GUI展示的OpenGL程序,因此想到用QT来做界面,需要在QT中写OpenGL,配完环境后,在这里总计一下. QT基础 总体看来,QT的版本较为混乱,有时候 ...

  4. QT 中QTimer 和 startTimer()的区别

    最需要注意一点 请注意,QTimer的准确性取决于底层操作系统和硬件.timerType参数允许您自定义计时器的准确性.有关不同计时器类型的信息,请参见Qt::TimerType.大多数平台支持20毫 ...

  5. QT 中使用 OpenCv 的 CascadeClassifier 报错

    问题 在 QT 中调用 OpenCv 的 CascadeClassifier 进行人脸框检测的时候,在构造函数中进行检测器的初始化,随后调用相机读取图片的时候就会报错,报的错误是 Segment Fa ...

  6. 【Qt】Qt中使用ssl时报错:qt.network.ssl: QSslSocket: cannot resolve SSLv2_client_method

    一.问题 在Qt中使用https,运行时报错: qt.network.ssl: QSslSocket: cannot resolve SSLv2_client_method 二.原因分析 SSLv2由 ...

  7. Qt中两种定时器用法

    在Qt中使用定时器有两种方法,一种是使用QObiect类的定时器:一种是使用QTimer类.定时器的精确性依赖于操作系统和硬件,大多数平台支持20ms的精确度. 1.QObject类的定时器 QObj ...

  8. Qt中的 Size Hints 和 Size Policies

    sizeHint 这个属性所保存的 QSize 类型的值是一个被推荐给窗口或其它组件(为了方便下面统称为widget)的尺寸,也就是说一个 widget 该有多大,它的一个参考来源就是这个 sizeH ...

  9. Qt中使用多线程的一些心得(一)——继承QThread的多线程使用方法

    一 前言 二Qt多线程方法一 继承QThread 2.1使用多线程的原因分析 2.2 写一个继承于QThread的线程 三 总结 一 前言   本篇文章部分内容参考了该博文:传送门.   Qt中有两种 ...

最新文章

  1. Love Java , Love IBM , Love Sun ( SunJiHai )
  2. js 自动关闭html页面,JS关闭窗口或JS关闭页面的几种代码分享
  3. 2017蓝桥杯省赛---java---C---2(兴趣小组)
  4. JavaFX自定义控件– Nest Thermostat第1部分
  5. 接口设计的几个注意事项
  6. 字符编码原理 ASCII,Unicode和UTF-8 - - ITeye技术网站
  7. 正确地实现以太币转账
  8. 算法导论 练习10.4-5二叉树的遍历
  9. Verilog 语法点使用————(持续更新)
  10. 在线数据库设计ERD-ONLINE
  11. 让vim在utf-8的local下打开 gbk 文件
  12. HBase Java API类介绍
  13. JS基础-DOM增删改-尚硅谷视频p103
  14. 日常生活 - 打印机如何扫描文件到电脑上
  15. 海阔凭鱼跃:记一场工业场景下的AI技术实践
  16. 圆的半径java_计算圆的半径
  17. 机器学习sklearn----支持向量机SVC模型评估指标
  18. 【超硬核】秒杀活动技术方案,Redis申请32个G,被技术总监挑战了...
  19. 应用排行榜第一名脸萌仅仅是刹那的烟火
  20. 【Volume X has invalid topology for mapped brick meshing】

热门文章

  1. 【Paper】2020_GrHDP Solution for Optimal Consensus Control of Multiagent Discrete-Time Systems
  2. 【控制】《自动控制原理》胡寿松老师-第9章-线性系统的状态空间分析与综合
  3. excel 多项式拟合数据
  4. 【S操作】冰箱正常运行监控系统需求整理
  5. Python带参数复数表示
  6. C++命名空间(namespace)
  7. 实现在CentOS7环境下搭建个人github博客
  8. 第十七章 Python网络编程
  9. 你能用微信小程序打开小程序了【附开发方法】
  10. Gym 101334F Feel Good