QT-纯代码控件-QGridLayout(网格布局)

2023-11-14

实现一个简单的网格布局分布

1.新建一个无ui界面的工程,其基类为dialog

2.代码实现

dialog.h和main.cpp不做改变
dialog.cpp
#include "dialog.h"
#include <QLabel>           //标签控件
#include <QGridLayout>      //网格布局
#include <QPushButton>      //按钮控件
#include <QDial>            //表盘控件
#include <QSlider>          //滑杆控件
#include <QLCDNumber>       //lcd控件


Dialog::Dialog(QWidget *parent)
    : QDialog(parent)
{
    //新建以下所示控件
    QPushButton * m_quitpushbutton = new QPushButton("退出",this);
    QLabel * m_cenlabel = new QLabel("摄氏温度",this);
    QLabel * m_fahlabel = new QLabel("华氏温度",this);
    m_fahlabel->setAlignment(Qt::AlignCenter);
    QLabel * m_label = new QLabel("0",this);
    QSlider * m_slider = new QSlider(this);
    QLCDNumber * m_lcdnumber = new QLCDNumber(this);
    QDial * m_dial = new QDial(this);
    QGridLayout * layout = new QGridLayout(this);

    layout->setSpacing(10);     //设置单元间隔
    layout->setMargin(20);      //设置边距
    //添加quit按钮控件到layout中去,起始于(0,0),横跨三个单元格 即colspan = 3
    layout->addWidget(m_quitpushbutton,0,0,1,3);
    //添加cen标签到layout中去,起始于(1,0),横跨两个单元格 即colspan = 2
    layout->addWidget(m_cenlabel,1,0,1,2);
    //添加fah标签到layout中去,起始于(1,2),占一个单元,不设rowspan和colspan
    layout->addWidget(m_fahlabel,1,2);
    //添加"0"lab标签到layout中去,起始于(1,2),横跨两个单元格,即rowspan = 2
    layout->addWidget(m_label,2,0,2,1);
    //添加滑竿到layout中去。起始于(2,1),横跨两个单元格
    layout->addWidget(m_slider,2,1,2,1);
    //添加液晶数字到layout中去,起始于(2,2),占用一个单元格
    layout->addWidget(m_lcdnumber,2,2);
    //添加转盘道layout中去,起始于(3,2),占用一个单元格
    layout->addWidget(m_dial,3,2);
    //添加layout到窗口中去
    this->setLayout(layout); 
}

Dialog::~Dialog()
{

}

3.效果展示

在这里插入图片描述

4.不足

1.这里没有将slider控件和label控件的信号与槽连接起来,因为没找到相应的槽函数,故无法拖动显示值
2.表盘控件dialog和lcd液晶显示没能实现信号连接

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

QT-纯代码控件-QGridLayout(网格布局) 的相关文章

随机推荐

  • UML类图中类与类之间的关系

    前言 在软件系统中 类不是孤立存在的 类与类之间存在相互关系 因此 需要通过 UML 来描述这些类之间的关系 类之间具有如下几种关系 关联关系 依赖关系 泛化关系 接口与实现关系 关联关系 含义 通常将一个类的对象作为另一个类的属性 表示
  • python matlibplot时如何不显示图片只保存图片

    1 查看网上的博客好像没得到需要的结果 于是查看官方文档 既然跟show有关 我就先查询 plt show 2 在see also中查看到了ioff可以禁用交互模式 而交互模式就是在创建图时就显示出图片 禁用了之后就可以只保存而不显示了 具
  • LVS + DR + Keepalived 高可用群集构建

    文章目录 一 Keepalived 概述 1 为什么需要 keepalived 2 keepalived 是什么 3 keepalived 服务重要功能 4 keepalived 高可用故障切换转移原理 5 keepalived 体系主要模
  • 关于执行上下文的学习总结

    学习总结自 https juejin cn post 6844904145372053511 heading 1 执行上下文 Execution Context 全局执行上下文 函数执行上下文 eval执行上下文 每个执行上下文会创建 词法
  • stem函数的简单应用-matlab

    stem x 去除火柴头 仅举例常用的几个函数 其他的可参考stem 还有 stem Y 将数据序列 Y 绘制为从沿 x 轴的基线延伸的针状图 各个数据值由终止每个针状图的圆指示 如果 Y 是向量 x 轴的刻度范围是从 1 至 length
  • AI浅谈

    前言 近年来 随着 Google 的 AlphaGo 打败韩国围棋棋手李世乭之后 机器学习尤其是深度学习的热潮席卷了整个IT界 所有的互联网公司 尤其是 Google 微软 百度 腾讯等巨头 无不在布局人工智能技术和市场 百度 腾讯 阿里巴
  • 1001. 害死⼈不偿命的(3n+1)猜想(15分)

    害死 不偿命的 3n 1 猜想 15分 卡拉兹 Callatz 猜想 对任何 个 然数n 如果它是偶数 那么把它砍掉 半 如果它是奇数 那么把 3n 1 砍掉 半 这 样 直反复砍下去 最后 定在某 步得到n 1 卡拉兹在1950年的世界数
  • 【数据结构】Map 映射

    数据结构源码 接口 public interface Map
  • shell 判断某个url是否能够访问

    urlstatus curl s m 5 IL serverurl grep 200 if urlstatus then echo urlstatus is OFF fi ping也可以判断 但是要判断返回值 比较麻烦 curl下载 然后判
  • LLVM 安装(Ubuntu)

    安装命令 sudo apt get install llvm sudo apt get install clang 验证安装 llvm as version clang version 安装成功 其他安装方法 LLVM Ubuntu安装 预
  • 结构体的基础知识

    1 结构体存储原则 原则一 结构体中元素是按照定义顺序一个一个放到内存中去的 但并不是紧密排列的 从结构体存储的首地址开始 每一个元素放置到内存中时 它都会认为内存是以它自己的大小来划分的 因此元素放置的位置一定会在自己宽度的整数倍上开始
  • 开放封闭原则的理解与具体实现 C#Unity

    目录 前言与文章介绍 一 概念阐释 1 什么是开放封闭 2 开放封闭原则怎么实现 2 1 基本思路 2 2 具体方法 二 运用原则的实例说明 实现解释 实例总结 三 相关链接 前言与文章介绍 文章将先阐释开放封闭原则 然后将理论运用于实践
  • 单片机I/O口输入输出阻抗

    目录 1 阻抗定义 2 输入阻抗 3 输出阻抗 1 阻抗定义 在具有电阻 电感 电容的电路里 对交流电所起的阻碍作用叫阻抗 用Z表示 阻抗由电阻 容抗 感抗三者组成 但不是简单三者相加 单位为欧 解决单片机端口问题时 可以将阻抗简单看成电阻
  • Vue系列第五篇:Vue2(Element UI) + Go(gin框架) + nginx开发登录页面及其校验登录功能

    本篇使用Vue2开发前端 Go语言开发服务端 使用nginx代理部署实现登录页面及其校验功能 目录 1 部署结构 2 Vue2前端 2 1代码结构 2 1源码 3 Go后台服务 3 2代码结构 3 2 源码 3 3单测效果 4 nginx
  • 如何給html5的video的src地址不以明文方式顯示,以防止下載

    chrome chrome的video標籤支持src redirect
  • ubunut 远程备份整个系统到其他磁盘中

    ssh src ip sudo S dd if dev mmcblk0 dd of img status progress 压缩镜像
  • ESP8266恒温控制器

    本文 我们将使用ESP8266构建家用恒温器 温控器将具有以下功能 它将从DHT22温度传感器读取温度 它将温度与所需温度进行比较 如果高于它 它将触发继电器关闭 如果低于它 它将触发继电器打开 在此之前 首先了解下ESP8266如何保持温
  • mediapipe教程1:python代码

    一 背景 因为领导想用这个东西 因此开始研究 首先对于mediapipe的介绍不多说 百度一大堆 主要是 1 跨平台 2 对于移动设备友好 实时性足够 二 环境 因为对这东西不了解 这里先用python代码简单的看看效果 代码的参考网址 1
  • 零基础入门语义分割-地表建筑物识别-Task03:网络模型结构发展(3天)

    比赛地址 https tianchi aliyun com competition entrance 531872 introduction 本章主要讲解的是语义分割网络模型的发展 FCN SegNet Unet DeepLab Refin
  • QT-纯代码控件-QGridLayout(网格布局)

    实现一个简单的网格布局分布 1 新建一个无ui界面的工程 其基类为dialog 2 代码实现 dialog h和main cpp不做改变 dialog cpp include dialog h include