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

74常用控件_QSpacerItem的使用

目录

代码⽰例: 创建⼀组左右排列的按钮.


Spacer
使⽤布局管理器的时候, 可能需要在控件之间, 添加⼀段空⽩. 就可以使⽤ QSpacerItem 来表⽰.
核⼼属性
属性说明
width宽度
height高度
hData水平方向的 sizePolicy

QSizePolicy::Ignored:忽略控件的尺寸,不对布局产生影响。
QSizePolicy::Minimum:控件的最小尺寸为固定值,布局时不会超过该值。
QSizePolicy::Maximum:控件的最大尺寸为固定值,布局时不会小于该值。
QSizePolicy::Preferred:控件的理想尺寸为固定值,布局时会尽量接近该值。
QSizePolicy::Expanding:控件的尺寸可以根据空间调整,尽可能占据更多空间。
QSizePolicy::Shrinking:控件的尺寸可以根据空间调整,尽可能缩小以适应空间。
vData垂直方向的 sizePolicy

选项同上。
上述属性在构造函数设置即可

代码⽰例: 创建⼀组左右排列的按钮.

1) 在界⾯上创建⼀个 QVBoxLayout , 并添加两个按钮
2) 直接运⾏程序, 可以看到两个按钮是紧挨着的
3) 在两个按钮中间添加⼀个 spacer
//创建 spacer 使两个按钮之间存在空白.QSpacerItem* spacer = new QSpacerItem(100, 200);

 

#include "widget.h"
#include "ui_widget.h"
#include <QHBoxLayout>
#include <QPushButton>
#include <QSpacerItem>Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget)
{ui->setupUi(this);QHBoxLayout* layout = new QHBoxLayout();this->setLayout(layout);QPushButton* button1 = new QPushButton("按钮1");QPushButton* button2 = new QPushButton("按钮2");//创建 spacer 使两个按钮之间存在空白.QSpacerItem* spacer = new QSpacerItem(100, 200);// 当前是要把空白添加到两个按钮之间. 此处 add 的顺序就是把 addSpacerItem 放到中间了.layout->addWidget(button1);layout->addSpacerItem(spacer);layout->addWidget(button2);}Widget::~Widget()
{delete ui;
}
4) 运⾏程序, 观察代码效果. 可以看到两个按钮之间已经存在了间隔了.
调整 QSpacerItem 不同的尺⼨, 即可看到不同的间距
在 Qt Designer 中, 也可以直接给界⾯上添加 spacer.
上述的每个控件,都是”可扩展的’
每个控件都是对应Qt内置的一个类
咱们在代码中都可以基于这个类,继承出你自定义的子类~~
在这个自定义的子类中,又可以添加很多的属性和方法~~实现你自己的需求场景~~
还可以在子类中,把多个控件组合到一起~~
http://www.xdnf.cn/news/12966.html

相关文章:

  • 01-VMware16虚拟机详细安装
  • jmeter聚合报告中参数详解
  • 深度优先算法学习
  • Python学习——数组的行列互换
  • VSCode内网安装插件
  • 飞算 JavaAI 2.0.0:开启老项目迭代维护新时代
  • 零基础入门 C 语言基础知识(含面试题):结构体、联合体、枚举、链表、环形队列、指针全解析!
  • SpringCloud——微服务
  • Reasoning over Uncertain Text by Generative Large Language Models
  • NLP学习路线图(三十二): 模型压缩与优化
  • AWS 公开数据集下载与操作说明
  • RabbitMQ入门
  • 多线程3(Thread)
  • 平衡二叉树:让搜索效率飞升的树形艺术
  • 初入 python Django 框架总结
  • 大话软工笔记—需求调研的准备
  • Perplexity AI:重塑你的信息探索之旅
  • amd64 -- buildx linux 镜像 Docker docker
  • Spring Boot微服务架构(十四):传统架构与微服务架构的开发成本对比分析
  • 联邦学习的创新方向
  • 双指针详解
  • 一键搭建 WordPress + MySQL + phpMyAdmin 环境(支持 PHP 版本选择 自定义配置)
  • 浮点数运算和精度总结
  • ​​​​​​​6板块公共数据典型应用场景【政务服务|公共安全|公共卫生|环境保护|金融风控|教育科研]
  • 简约商务通用宣传年终总结12套PPT模版分享
  • 服务器 | Centos 9 系统中,如何部署SpringBoot后端项目?
  • 随便刷刷web题
  • 7.Pandas 数据可视化图-2
  • Cilium动手实验室: 精通之旅---12.Cilium Egress Gateway - Lab
  • ABP vNext 与 HDFS 数据湖存储集成