当前位置: 首页 > news >正文

71常用控件_QHBoxLayout的使用

目录

代码⽰例: 使⽤ QHBoxLayout 管理控件

代码⽰例: 嵌套的 layout


⽔平布局
使⽤ QHBoxLayout 表⽰垂直的布局管理器. H 是 horizontal 的缩写.
核⼼属性 (和 QVBoxLayout 属性是⼀致的)
属性说明
layoutLeftMargin左侧边距
layoutRightMargin右侧边距
layoutTopMargin上方边距
layoutBottomMargin下方边距
layoutSpacing相邻元素之间的间距

代码⽰例: 使⽤ QHBoxLayout 管理控件

1) 编写代码, 创建布局管理器和三个按钮. 并且把按钮添加到布局管理器中
#include "widget.h"
#include "ui_widget.h"
#include <QPushButton>
#include <QHBoxLayout>Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget)
{ui->setupUi(this);QPushButton* button1 = new QPushButton("按钮1");QPushButton* button2 = new QPushButton("按钮2");QPushButton* button3 = new QPushButton("按钮3");QHBoxLayout* layout = new QHBoxLayout();layout->addWidget(button1);layout->addWidget(button2);layout->addWidget(button3);this->setLayout(layout);
}Widget::~Widget()
{delete ui;
}

2) 运⾏程序, 可以看到此时界⾯上的按钮就存在于布局管理器中. 随着窗⼝尺⼨变化⽽发⽣改变.
此时三个按钮的尺⼨和位置, 都是⾃动计算出来的.

Layout ⾥⾯可以再嵌套上其他的 layout, 从⽽达到更复杂的布局效果.

代码⽰例: 嵌套的 layout

1) 在代码中创建以下内容
使⽤ addLayout 给 layout 中添加⼦ layout.
2) 执⾏程序, 观察结果
结合 QHBoxLayout QVBoxLayout , 就可以做出各种复杂的界⾯了.
布局管理器之间,也能进行嵌套~~

#include "widget.h"
#include "ui_widget.h"
#include <QVBoxLayout>
#include <QHBoxLayout>
#include <QPushButton>Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget)
{ui->setupUi(this);// 创建垂直的布局管理器QVBoxLayout* vlayout = new QVBoxLayout();// 添加两个按钮进去QPushButton* button1 = new QPushButton("按钮1");QPushButton* button2 = new QPushButton("按钮2");vlayout->addWidget(button1);vlayout->addWidget(button2);// 创建水平的布局管理器QHBoxLayout* hlayout = new QHBoxLayout();// 添加两个按钮进去QPushButton* button3 = new QPushButton("按钮3");QPushButton* button4 = new QPushButton("按钮4");hlayout->addWidget(button3);hlayout->addWidget(button4);// 把水平布局管理器添加到垂直布局管理器内部vlayout->addLayout(hlayout);this->setLayout(vlayout);}Widget::~Widget()
{delete ui;
}

相关文章:

  • OCS2库及其在足式机器人上的应用
  • 直观地理解程序的堆和栈
  • 三维图形、地理空间、激光点云渲染技术术语解析笔记
  • hot100 -- 11.二分查找系列
  • JVM内存区域与溢出异常详解
  • 算法工程师认知水平要求总结
  • 华为OD机考 - 水仙花数 Ⅰ(2025B卷 100分)
  • 数学建模期末速成 主成分分析的基本步骤
  • Z-FOLD: A Frustratingly Easy Post-Training Quantization Scheme for LLMs
  • 实战:如何用SCINet增强YOLOv8在低照度下的目标检测性能(附完整代码)
  • Linux安全加固:从攻防视角构建系统免疫
  • 打造优质技术文档指南
  • 基于RT-DETR算法的夜间交通车辆与行人目标检测
  • 附加模块--Qt OpenGL模块功能及架构
  • 68常用控件_QGroupBox的使用
  • 【Linux】HAProxy:结合 WG 实现内网 TCP 反代
  • 大数据CSV导入MySQL
  • 微软PowerBI考试 PL300-使用 Power BI 准备数据以供分析【提供练习数据】
  • JDK8新特性之Steam流
  • 通过css实现正方体效果
  • 网站建设和维护待遇怎样/机器人编程培训机构排名
  • wordpress安装教程视频教程/国内最好的seo培训
  • 厦门做企业网站比较好的公司/海外推广方法有哪些
  • 四川省建设厅官方网站/交换链接是什么
  • 河北9市最新消息/上海有实力的seo推广咨询
  • 如果自己建立网站/关键字搜索引擎