Qt 自定义控件

news2024/11/30 14:52:35

 学过的东西很久不用都已经忘记了,即使是很简单的事情

1、添加一个Qt 设计师界面类

 

 如何将这个放到比较好看并且是居中的呢?

布局--》水平-》竖直 

点击大的widget 不是这两个控件

 

 2、在主窗口中添加一个widget 来加载上面我们已经拿到组合控件

 3、将这个widget提升为

 

 之后了我们验证一下这个是不是成功,直接运行程序:

 如果出现这样就说明加载成功这个自定义控件了

4、我们需要让这个自定义控件来实现相互显示;

    // 设计  数字改变的时候  滑动块移动到对应的位置
    void(QSpinBox:: * singlespinBox)(int)=&QSpinBox::valueChanged;
    connect(ui->sBox,singlespinBox,ui->horizontalSlider,&QSlider::setValue);

测试一下:

 5、获得slider 上面的值

   // 数字随着slider 的滑动而改变数值
    connect(ui->horizontalSlider,&QSlider::valueChanged,ui->sBox,&QSpinBox::setValue);

测试一下:

 6、我们需要在主窗口分别设置get 和set 的功能

在smallwidget 中写两个函数

#ifndef SMALLWIDGET_H
#define SMALLWIDGET_H

#include <QWidget>

namespace Ui {
class smallwidget;
}

class smallwidget : public QWidget
{
    Q_OBJECT

public:
    explicit smallwidget(QWidget *parent = nullptr);
    ~smallwidget();
    
    int  getNumber();
    void setNUber();

private:
    Ui::smallwidget *ui;
};

#endif // SMALLWIDGET_H

 

 代码:

smallwidget
#include "smallwidget.h"
#include "ui_smallwidget.h"

smallwidget::smallwidget(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::smallwidget)
{
    ui->setupUi(this);
    // 设计  数字改变的时候  滑动块移动到对应的位置
    void(QSpinBox:: * singlespinBox)(int)=&QSpinBox::valueChanged;
    connect(ui->sBox,singlespinBox,ui->horizontalSlider,&QSlider::setValue);


    // 数字随着slider 的滑动而改变数值
    connect(ui->horizontalSlider,&QSlider::valueChanged,ui->sBox,&QSpinBox::setValue);
}

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

int smallwidget::getNumber()
{
    return ui->sBox->value();
}

void smallwidget::setNUber(int num)
{
    ui->sBox->setValue(num);
}
Widget
#include "widget.h"
#include "ui_widget.h"
#include<QDebug>
Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);

     //获得功能
    connect(ui->getBtn,&QPushButton::clicked,[=](){
        qDebug()<< ui->mywidget->getNumber();
    });

    connect(ui->setBtn,&QPushButton::clicked,[=](){
       ui->mywidget->setNUber(23);
    });
}

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

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

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

相关文章

HTML入门零基础教程(三)

嗨&#xff0c;大家好&#xff0c;我是异星球的小怪同志 一个想法有点乱七八糟的小怪 如果觉得对你有帮助&#xff0c;请支持一波。 希望未来可以一起学习交流。 目录 一、 VSCode工具生成骨架标签新增代码 1.文档类型声明标签 2.lang语言种类 3.charset字符集 二、HT…

从刘老师的进化的力量到有感,疫情阶段如何弯道超车

听了刘老师的内容&#xff0c;了解了一个公式&#xff1a;方向趋势不确定周期&#xff0c;那么JVS更能成为企业这几年实现弯道超车的助理。 方向事关企业生死&#xff0c;在方向上宁愿多花些时间&#xff0c;也不能犯错。不确定刺激企业短时间的痛&#xff0c;企业是需要化解短…

[Spring MVC 4] MyBatis 分页开发

在做Web开发的时候&#xff0c;需要对查询结果进行分页查询&#xff0c;初学者会使用原生的sql查询方式&#xff0c;例如limit关键字&#xff0c;不过这种属于对数据库物理分页了&#xff0c;然而会造成数据库本身的压力&#xff0c;所以分页管理就诞生了。一般在Mybatis中使用…

校园二手交易系统,二手交易网站,闲置物品交易系统毕业设计作品

项目背景和意义 目的&#xff1a;本课题主要目标是设计并能够实现一个基于web网页的二手交易网站系统&#xff0c;整个网站项目使用了B/S架构&#xff0c;基于java的springboot框架下开发&#xff1b;用户通过登录网站&#xff0c;查询二手交易商品&#xff0c;购买二手交易网站…

对于volatile的看法

volatile原意是易变的&#xff0c;编译器对volatile修饰的变量&#xff0c;当要读取这个变量时&#xff0c;任何情况下都会从内存中读取&#xff0c;而不会从寄存器缓存中读取。 编译器不会对volatile修饰的变量进行任何优化 1&#xff09;非volatile变量 在这个用例中&#…

codery-why蘑菇街商城项目梳理笔记

supermallagain-学习记录 项目目录搭建 安装vue以及整理目录 样式初始化 引入assets/css/normalize.css文件 在实际开发中&#xff0c;经常会将浏览器默认的样式进行重置 *{margin:0;padding:0;border:0;}但是*是通配符&#xff0c;需要把所有的标签都遍历一遍&#xff0c;…

MySQL底层知识总结

MySQL数据库配置主从 三大日志 -binlog 归档日志 -redolog 重做日志 -undolog docker run --name mysql102 -p 33062:3306 -e MYSQL_ROOT_PASSWORD123 -d mysql:5.7 --character-set-serverutf8mb4 --collation-serverutf8mb4_unicode_ciGRANT REPLICATION SLAVE ON *.* t…

Spring Bean 的生命周期(看着图不迷路)

目录 Bean的生命周期5步走系列&#xff1a; BeanLifeCycle类 Spring.xml 配置文件 BeanLifeTest测试方法 运行结果&#xff1a; Bean的生命周期7步走系列:在实例化Bean的前和后加了两步。​​​​ 定义myInstantiationAwareBeanPostProcessor 类 实现InstantiationAwar…

【JavaWeb】一文搞懂Java过滤器与拦截器的区别

✅✅作者主页&#xff1a;&#x1f517;孙不坚1208的博客 &#x1f525;&#x1f525;精选专栏&#xff1a;&#x1f517;JavaWeb从入门到精通&#xff08;持续更新中&#xff09; &#x1f4cb;&#x1f4cb; 本文摘要&#xff1a;本篇文章主要分享Java过滤器与拦截器的知识。…

字节跳动测开实习生面试,拿15K过分吗?

今年9月面了字节跳动的测试开发岗&#xff08;日常实习岗&#xff09;&#xff0c;2面技术面和1面hr面。拿到offer后&#xff0c;考虑到自己还是想保研怕成绩掉&#xff0c;选择留在学校&#xff0c;拒offer。 很幸运的是我的简历被内推到了其他部门&#xff0c;今年10月初字节…

【MySQL性能优化系列】select count(*)走二级索引比主键索引快几百倍,你敢信?

问题 在MySQL版本5.7数据测试过程中&#xff0c;一张百万数据的表用 select count(*)查询特别慢需要20s并且是走了主键索引&#xff0c;为什么查询还需要这么久&#xff1f;如何优化&#xff1f;下面我们将请到当事SQL进行发言 验证分析 猜想 先猜想一波为什么走了主键索引依…

【Vue3】手把手教你创建前端项目 Vue3 + Ts + vite + pinia

文章目录一、 项目初始化二、 代码风格安装eslint安装prettier三、 状态管理工具--Pinia优点使Pinia 基本使用四、Vue-Router4 快速上手指南五、VueUse快速上手指南什么是 VueUse简单上手六、全局样式CSS原生 css 新特性scss 或 less封装axios安装依赖封装UI 样式库一、 项目初…

数据结构(二叉树)——Java实现

作者&#xff1a;~小明学编程 文章专栏&#xff1a;Java数据结构 格言&#xff1a;目之所及皆为回忆&#xff0c;心之所想皆为过往 目录 树型结构 什么是树 树的相关概念 树的表现形式 树的引用 二叉树 概念 二叉树的种类 常规二叉树 满二叉树 完全二叉树 二叉树的性…

京东商品接口加解密算法解析

最近,闲来没事,打开看了一下京东图书的热销榜,想通过接口查看下它接口的加密方式,于是直接打开了M站的地址:https://m.jd.com/,然后打开搜索页面,如下图。 打开页面,打开开发者工具,往下滑动鼠标,获取接口地址。 解析一下接口,接口返回值跟没什么特殊说明,首尾加…

spring boot 整合 shiro 框架

1、整合shiro 1.1、创建spring boot项目 1.2、引入依赖 <dependency><groupId>org.apache.shiro</groupId><artifactId>shiro-spring-boot-web-starter</artifactId><version>1.9.0</version> </dependency><!--mybatis…

云手机在黑产中的应用

虚拟化技术是当下黑灰产的热门技术。使用虚拟化环境&#xff0c;让黑灰产可以利用虚拟环境在应用运行环境的更底层这一优势&#xff0c;对 App 进行神不知鬼不觉的修改&#xff0c;从而避免在分析、破解 App 上的投入。 较早之前以 VirtualApp 为代表的 Android 虚拟化多开工具…

OpenHarmony源码分析(二):系统安全

1、 概要 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-gc6K9a9A-1667380110547)(PNG/11.png)] 2、 进程隔离 OpenHarmony 内核态的进程之间无隔离,共享一块VMM空间,用户态进程每个用户用于自己独立的空间,相互之间不可见,通过MMU 机制实现进…

拓端tecdat|python在Scikit-learn中用决策树和随机森林预测NBA获胜者

全文链接&#xff1a;http://tecdat.cn/?p5222 原文出处&#xff1a;拓端数据部落公众号 在本文中&#xff0c;我们将以Scikit-learn的决策树和随机森林预测NBA获胜者。美国国家篮球协会&#xff08;NBA&#xff09;是北美主要的男子职业篮球联赛&#xff0c;被广泛认为是首屈…

【Transformers】第 5 章:微调文本分类的语言模型

&#x1f50e;大家好&#xff0c;我是Sonhhxg_柒&#xff0c;希望你看完之后&#xff0c;能对你有所帮助&#xff0c;不足请指正&#xff01;共同学习交流&#x1f50e; &#x1f4dd;个人主页&#xff0d;Sonhhxg_柒的博客_CSDN博客 &#x1f4c3; &#x1f381;欢迎各位→点赞…

Go语言入门【1】数据类型、变量、常量

常见基本数据类型 uint8&#xff1a;无符号8位整形&#xff0c;取值范围&#xff1a;0-255 uint16&#xff1a;无符号16位整形&#xff0c;取值范围&#xff1a;0-65535 uint32&#xff1a;无符号32位整形&#xff0c;取值范围&#xff1a;0-4294967295 uint64&#xff1a;…