QT QVerticalSpacer 弹簧控件

news2024/11/24 0:41:28

        本文详细的介绍了QVerticalSpacer控件的各种操作,例如:新建界面、控件布局、隐藏控件、设置宽高、添加布局、其它参数、.h源文件、cpp源文件、其它文章等等操作。

        实际开发中,一个界面上可能包含十几个控件,手动调整它们的位置既费时又费力。布局管理器可以完成两件事:自动调整控件的位置,包括控件之间的间距、对齐等;当用户调整窗口大小时,位于布局管理器内的控件也会随之调整大小,从而保持整个界面的美观。

        本系列QT全面详解文章目前共有二十六篇,本系列文章较为详细的讲述了QT控件的基础操作和使用,也谢谢大家的关注、点赞、收藏。

本文作者原创,转载请附上文章出处与本文链接。

QT QVerticalSpacer 弹簧控件目录

1 新建界面

2 控件布局

3 隐藏控件

4 设置宽高

5 添加布局

6 其它参数

7 .h源文件

8 .cpp源文件

9 其它文章


1 新建界面

2 控件布局

#include <QHBoxLayout>
#include <QVBoxLayout>
#include <QPushButton>

QPushButton* pushButton;
QPushButton* pushButton_2;
QVBoxLayout* vBoxLayout_2;

    Title = "QT QVerticalSpacer  CSDN 双子座断点 ";
    Version = "V 1.0 ";
    BlogText = "https://blog.csdn.net/qq_37529913?type=lately/";
    setWindowTitle(Title + Version + BlogText);

    vBoxLayout_2 = new QVBoxLayout;
    pushButton = new QPushButton("QPushButton");
    pushButton_2 = new QPushButton("QPushButton");

3 隐藏控件

ui->verticalSpacer->changeSize(0, 0);
//ui->horizontalLayout->update(); //更新弹簧控件所在的布局器

4 设置宽高

ui->verticalSpacer->changeSize(20, 60);

5 添加布局

    vBoxLayout_2->addSpacerItem(new QSpacerItem(20, 20));
    vBoxLayout_2->addWidget(pushButton);

    vBoxLayout_2->addWidget(pushButton_2);
    vBoxLayout_2->addSpacerItem(new QSpacerItem(20, 20));
    ui->horizontalLayout->addLayout(vBoxLayout_2);

6 其它参数

  • QSizePolicy::Fixed,持有该Policy,那么窗口(widget)只接受缺省大小作为尺寸选择,因此无法进行放大或者缩小。
  • QSizePolicy::Minimum,持有该Policy,那么窗口将会以最小尺寸作为缺省大小,在此基础上(最小尺寸的基础上),可以放大,但是默认不会优先进行放大,只有在布局的其他部分不会放大的情况下,才会“不得已”、“不情愿”地进行放大。
  • QSizePolicy::Maximum,持有该Policy,那么窗口(widget)将会将最大尺寸作为缺省大小,在此基础上(最大尺寸的基础上),可以为布局中其他需要空间的控件进行缩小。简而言之,可以不“不主动”的进行缩小。
  • QSizePolicy::Preferred,持有该Policy,那么窗口会以一种“所谓的最佳尺寸”作为缺省大小(一般就是介于minimun和maximum之间某个尺寸大小),可以“被动式的”为布局中其他控件缩小以腾出空间给需要空间的控件,也可以放大,以占据多余的空间。
  • QSizePolicy::Expanding,持有该Policy,那么窗口会在布局中,以一种“所谓的最佳尺寸”作为缺省大小,然后会""“尽可能多地”、“主动地”占据占据多余的空间。
  • QSizePolicy::MinimumExpanding,持有该Policy,与上面的Expanding很像,唯一区别就是,在这里,缺省大小是最小尺寸,因此,以缺省大小(也就是最小尺寸)为标准,只能放大,而且是“主动地”,“尽可能多的”占据多余的空间。
  • QSizePolicy::Ignored,持有该Policy,忽视缺省尺寸( sizeHint( ) ),“主动地”,“尽可能多地”占据多余的空间。
     

7 .h源文件

#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QMainWindow>
#include <QHBoxLayout>
#include <QVBoxLayout>
#include <QPushButton>

#pragma execution_character_set("utf-8")

QT_BEGIN_NAMESPACE
namespace Ui { class MainWindow; }
QT_END_NAMESPACE

class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    MainWindow(QWidget *parent = nullptr);
    ~MainWindow();

private:
    Ui::MainWindow *ui;

    QString Title;
    QString Version;
    QString BlogText;

    QPushButton* pushButton;
    QPushButton* pushButton_2;
    QVBoxLayout* vBoxLayout_2;
};
#endif // MAINWINDOW_H

8 .cpp源文件

#include "mainwindow.h"
#include "ui_mainwindow.h"

MainWindow::MainWindow(QWidget *parent)
    : QMainWindow(parent)
    , ui(new Ui::MainWindow)
{
    ui->setupUi(this);


    Title = "QT QVerticalSpacer  CSDN 双子座断点 ";
    Version = "V 1.0 ";
    BlogText = "https://blog.csdn.net/qq_37529913?type=lately/";
    setWindowTitle(Title + Version + BlogText);

    vBoxLayout_2 = new QVBoxLayout;
    pushButton = new QPushButton("QPushButton");
    pushButton_2 = new QPushButton("QPushButton");


    //隐藏控件
    ui->verticalSpacer->changeSize(0, 0);

    //设置宽高
    //ui->verticalSpacer->changeSize(20, 60);


    vBoxLayout_2->addSpacerItem(new QSpacerItem(20, 20));
    vBoxLayout_2->addWidget(pushButton);

    vBoxLayout_2->addWidget(pushButton_2);
    vBoxLayout_2->addSpacerItem(new QSpacerItem(20, 20));
    ui->horizontalLayout->addLayout(vBoxLayout_2);


}

MainWindow::~MainWindow()
{
    delete ui;
}

9 其它文章

QT TextEdit控件_双子座断点的博客-CSDN博客_qt textedit

QT QComboBox使用详解_双子座断点的博客-CSDN博客

QT QtableView操作详解_双子座断点的博客-CSDN博客_qtableview增删改查

Qt QStandardItemModel(1.超级详细用法)_双子座断点的博客-CSDN博客_qstandardmodel

Qt QStandardItemModel(2.超级详细函数)_双子座断点的博客-CSDN博客_qstandarditemmodel点击事件

QT QRadioButton使用详解_双子座断点的博客-CSDN博客_qt radiobutton

QT QLineEdit使用详解_双子座断点的博客-CSDN博客_qt qlineedit

Qt QMessageBox使用详解_双子座断点的博客-CSDN博客_qt message

QChart折线图、饼状图、条形图、曲线图_双子座断点的博客-CSDN博客_qchart样式

QChart属性详解_双子座断点的博客-CSDN博客_setanimationoptions

QCharts QValueAxis使用_双子座断点的博客-CSDN博客_qvalueaxis

Qt 5 等待提示框(开源 动态图)_双子座断点的博客-CSDN博客_qt 等待对话框

QtDataVisualization 数据3D可视化_双子座断点的博客-CSDN博客_qtdatavisualizatio

QT QSpinBox 整数计数器控件 使用详解_双子座断点的博客-CSDN博客
QT QDoubleSpinBox 浮点计数器控件(使用详解)_双子座断点的博客-CSDN博客_qdoublespinbox信号槽
QT QSlider、QHorizontalSlider、QVerticalSlider 控件 使用详解_双子座断点的博客-CSDN博客_qslider设置步长

QT QTabWidget 控件 使用详解_双子座断点的博客-CSDN博客

QT QCalendarWidget控件 使用详解_双子座断点的博客-CSDN博客

QT QStackedWidget 控件 使用详解_双子座断点的博客-CSDN博客

QT QVBoxLayout 垂直布局控件_双子座断点的博客-CSDN博客

QT QHBoxLayout 水平布局控件_双子座断点的博客-CSDN博客
QT QGridLayout网格布局控件_双子座断点的博客-CSDN博客
QT QFormLayout表单布局控件_双子座断点的博客-CSDN博客

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/614092.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

chatgpt赋能python:Python如何优化SEO

Python如何优化SEO SEO是指搜索引擎优化&#xff0c;是提高网站在搜索引擎中排名的技术实践。Python是一种高效、易用、灵活的编程语言&#xff0c;可以被应用于SEO的优化过程中。 关键词优化 关键词是SEO过程中的重要元素&#xff0c;Python可以帮助我们快速优化关键词。以…

chatgpt赋能python:Python拆分:如何有效地拆分Python代码

Python拆分&#xff1a;如何有效地拆分Python代码 Python是一种简洁而优雅的编程语言&#xff0c;它拥有庞大的库&#xff0c;使得它可以轻松处理各种任务。然而&#xff0c;在开发大型项目时&#xff0c;代码可能会变得冗长而难以维护。 通过拆分代码&#xff0c;可以使得代码…

WhatWeb使用教程,图文教程(超详细)

「作者主页」&#xff1a;士别三日wyx 「作者简介」&#xff1a;CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者 「推荐专栏」&#xff1a;对网络安全感兴趣的小伙伴可以关注专栏《网络安全入门到精通》 WhatWeb 一、扫描网站指纹二、扫描强度三、扫描内网…

Golang每日一练(leetDay0088) 数组的乘积、搜索二维矩阵II

目录 238. 除自身以外数组的乘积 Product of Array Except Self &#x1f31f;&#x1f31f; 240. 搜索二维矩阵 II Search A 2d Matrix ii &#x1f31f;&#x1f31f; &#x1f31f; 每日一练刷题专栏 &#x1f31f; Rust每日一练 专栏 Golang每日一练 专栏 Python每…

SpringBoot中的增删改查案例

目录 一、案例说明 二、数据库 三、案例源码 3.1、pom文件 3.2、Application.yml 3.3、项目结构 a&#xff09;整体结构 b&#xff09;Java代码部分 c&#xff09;资源文件部分 3.4、业务功能的实现 1&#xff09;配置类 2&#xff09;实体类 3&#xff09;Mapper文…

chatgpt赋能python:Python中如何对数据进行归一化

Python中如何对数据进行归一化 什么是数据归一化&#xff1f; 在数据分析和机器学习中&#xff0c;数据归一化&#xff08;Normalization&#xff09;指的是对数据进行缩放以使其值域范围映射到特定范围内&#xff0c;以便更好地进行处理和分析。通常情况下&#xff0c;数据归…

《Java并发编程实战》课程笔记(十四)

原子类&#xff1a;无锁工具类的典范 对于简单的原子性问题&#xff0c;还有一种无锁方案。Java SDK 并发包将这种无锁方案封装提炼之后&#xff0c;实现了一系列的原子类。无锁方案相对互斥锁方案&#xff0c;最大的好处就是性能。 互斥锁方案为了保证互斥性&#xff0c;需要…

chatgpt赋能python:Python如何处理SEO

Python如何处理SEO Python语言是一种非常流行的编程语言&#xff0c;它可以用于各种类型的应用程序开发&#xff0c;包括网页开发。在网页开发中&#xff0c;搜索引擎优化&#xff08;SEO&#xff09;是至关重要的&#xff0c;因为它决定了搜索引擎是否能够有效地找到和展示您…

chatgpt赋能python:Python如何快速找到函数

Python如何快速找到函数 作为一名有10年Python编程经验的工程师&#xff0c;我深知在Python编程过程中如何快速找到函数是非常重要的。在学习和掌握Python函数之前&#xff0c;首先需要学会如何快速地找到所需的Python函数。这篇文章将介绍一些我在编程中经常使用的方法&#…

RK3588平台开发系列讲解(驱动基础篇)I2C 总线实现 client 设备

平台内核版本安卓版本RK3588Linux 5.10Android 12文章目录 一、非设备树实现 i2c二、设备树实现 i2c沉淀、分享、成长,让自己和他人都能有所收获!😄 📢 Linux 中的 I2C 也是按照平台总线模型设计的,既然也是按照平台总线模型设计的,是不是也分为一个device 和一个 driv…

编程比赛 入门 学习路线

内容若有不足与纰漏&#xff0c;请多指教&#xff01; 文章目录 写在前面入门建议掌握的知识点数学思想算法 | 数据结构c STL容器类容器适配器组件迭代器常用算法函数 其他 编程 | 学习学习 | 练题 平台编程笔记 | 题解 比赛相关要点注意赛前赛中赛后 资料分享笔记题解资料PDF&…

JVM栈帧结构及动态链接

1. 栈帧结构 附加信息&#xff08;此处官网未具体说明&#xff0c;可忽略&#xff0c;参考图中结构理解即可&#xff09;&#xff1a;栈帧的高度&#xff0c;虚拟机版本信息 栈帧信息&#xff1a;附加信息动态链接方法的返回地址 局部变量表&#xff1a;方法中定义的局部变量…

基于flask的web应用开发——登录界面

目录 0. 前言1. request2. redirect3. 动态路由4. Jinja2代码实现 0. 前言 打算在云服务器上部署一个 TODO LIST 来练手&#xff0c;也就是一个代办事项提醒表。 本节学习使用 flask 库制作出一个登录界面&#xff0c;并且使用Redis数据库实现账号密码加载功能&#xff0c;关…

微信小程序登录的最佳实践

微信小程序登录的最佳实践 官方文档的介绍 小程序可以通过微信官方提供的登录能力方便地获取微信提供的用户身份标识&#xff0c;快速建立小程序内的用户体系。 登录流程时序 说明 调用 wx.login() 获取 临时登录凭证code &#xff0c;并回传到开发者服务器。 调用 auth.co…

图解C++对象模型

C对象模型是什么 《深度探索C对象模型》这本书中对对象模型的描述如下&#xff1a; 有两个概念可以解释C对象模型&#xff1a; 语言中直接支持面向对象程序设计的部分。 对于各种支持的底层实现机制。 语言中直接支持面向对象程序设计的部分&#xff0c;包括了构造函数、析构函…

chatgpt赋能python:Python如何快速复制上一行?

Python 如何快速复制上一行&#xff1f; 在编写Python代码时&#xff0c;经常需要快速复制上一行代码进行修改。如果只是简单的手动复制粘贴&#xff0c;会造成不必要的时间浪费并且容易出错。本文将介绍三种快速复制上一行代码的方法。 方法一&#xff1a;使用快捷键 在Pyt…

chatgpt赋能python:Python如何拟合曲线

Python如何拟合曲线 拟合曲线是数据分析中常见的一种方法。Python作为一种强大的编程语言&#xff0c;具有丰富的数据分析库和拟合曲线的功能。本文将介绍如何在Python中使用numpy、matplotlib和scipy库进行曲线拟合。 numpy库 numpy是Python中常用的数值计算库。它提供了许…

Error系列-CVE CIS-2023系统漏洞处理方案集合

问题1&#xff1a; CVE-2023-29491 Type: OS涉及到的包&#xff1a;ncurses-dev,ncurses-libs,ncurses-terminfo-base描述&#xff1a;当前系统安装的ncurses&#xff0c;存在漏洞&#xff0c;当被setuid应用程序使用时&#xff0c;允许本地用户通过在$HOME/中找到的终端数据库…

Spring Cloud Alibaba - Sentinel(二)

目录 一、Sentinel 熔断降级简介 1、基本介绍 2、熔断策略 3、熔断规则 二、Sentinel熔断策略 1、慢调用比例 2、异常比例 3、 异常数 三、热点规则 1、热点规则 2、参数例外项 四、系统规则 1、Sentinel 系统规则 一、Sentinel 熔断降级简介 1、基本介绍 除了流…