Qt开发基础(8)——自定义封装控件

2023-11-09

创建一个Widget之后,再进行新建如下设计师界面:

 

 

 

创建好了就是这样多了一个smallwidget.ui

假如我们需要将Spin Box和Horizontal Slider封装在一起 

 

 

我们可以看到封装的小控件是一个QWidget类型,所以我们在主窗口也应该加入一个QWidget类型的窗口。(类型必须一致)

 然后打开主窗口的Qwidget选择“提升为”,提升的类名称为SmallWidget

然后再点击添加,再点击“提升” 

发现主窗口的类名变为SmallWidget了。然后运行一下就会出现刚才封装的控件。 

 

如果一个主窗口需要几个进度条,那么再拉一个QWidget进行提升为就可以。 

 实际生活中,我们的滑块引动,左边的值也应该响应的变化,这时候我们只需要再刚才创建的smallWidget.h和cpp中进行操作即可。

实现左边动右边就动,右边动左边就动的代码,smallwidget.cpp代码为:

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

SmallWidget::SmallWidget(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::SmallWidget)
{
    ui->setupUi(this);
    //QSpinBox移动,QSlider跟着移动,valueChanged发生了重载不知道是int类型还是QString类型。所以我们可以写一个函数指针
    void(QSpinBox::* spSignal)(int) = &QSpinBox::valueChanged;
    connect(ui->spinBox,spSignal,ui->horizontalSlider,&QSlider::setValue);

    //QSLider移动QSinBox移动:由于QSLider的valueChange()函数只有一个不会重载所以不需要定义函数指针
    connect(ui->horizontalSlider,&QSlider::valueChanged,ui->spinBox,&QSpinBox::setValue);
}

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

 

 

 

 

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

Qt开发基础(8)——自定义封装控件 的相关文章

  • 在 LINQ 查询中返回不带时间的日期

    我正在编写一个查询 我想计算按日期联系我们的呼叫中心的次数 看起来很简单 但由于联系日期字段是日期时间字段 我得到了时间 因此当我按联系日期 时间 分组时 每个联系日期实例的计数为 1 所以 我想只按日期分组 而不按时间分组 下面是我用来查
  • C++:无法使用scoped_allocator_adaptor传播polymorphic_allocator

    我有一个vector
  • FFMPEG Seeking 带来音频伪影

    我正在使用 ffmpeg 实现音频解码器 在读取音频甚至搜索已经可以工作时 我无法找到一种在搜索后清除缓冲区的方法 因此当应用程序在搜索后立即开始读取音频时 我没有任何工件 avcodec flush buffers似乎对内部缓冲区没有任何
  • 如何在我的应用程序中使用 Windows Key

    Like Windows Key E Opens a new Explorer Window And Windows Key R Displays the Run command 如何在应用程序的 KeyDown 事件中使用 Windows
  • C# 中值类型和引用类型有什么区别? [复制]

    这个问题在这里已经有答案了 我知道一些差异 值类型存储在堆栈上 而引用类型存储在托管堆上 值类型变量直接包含它们的值 而引用变量仅包含对托管堆上创建的对象位置的引用 我错过了任何其他区别吗 如果是的话 它们是什么 请阅读 堆栈是一个实现细节
  • 跨多个控件共享事件处理程序

    在我用 C 编写的 Windows 窗体应用程序中 我有一堆按钮 当用户的鼠标悬停在按钮上时 我希望按钮的边框发生变化 目前我有以下多个实例 每个按钮一个副本 private void btnStopServer MouseEnter ob
  • C# 中可空类型是什么?

    当我们必须使用nullable输入 C net 任何人都可以举例说明 可空类型 何时使用可空类型 https web archive org web http broadcast oreilly com 2010 11 understand
  • C# 用数组封送结构体

    假设我有一个类似于 public struct MyStruct public float a 我想用一些自定义数组大小实例化一个这样的结构 在本例中假设为 2 然后我将其封送到字节数组中 MyStruct s new MyStruct s
  • 在 ASP.Net Core 2.0 中导出到 Excel

    我曾经使用下面的代码在 ASP NET MVC 中将数据导出到 Excel Response AppendHeader content disposition attachment filename ExportedHtml xls Res
  • 使用 LINQ 查找列表中特定类型的第一个元素

    使用 LINQ 和 C 在元素列表中查找特定类型的第一个项目的最短表示法是什么 var first yourCollection OfType
  • 线程、进程和 Application.Exit()

    我的应用程序由主消息循环 GUI 和线程 Task Factory 组成 在线程中我调用一些第三方应用程序var p new Process 但是当我调用Application Exit 在消息循环中 我可以看到在线程中启动的进程仍在内存中
  • 我的 strlcpy 版本

    海湾合作委员会 4 4 4 c89 我的程序做了很多字符串处理 我不想使用 strncpy 因为它不会终止 我不能使用 strlcpy 因为它不可移植 只是几个问题 我怎样才能让我的函数正常运行 以确保它完全安全稳定 单元测试 这对于生产来
  • 初始化变量的不同方式

    在 C 中初始化变量有多种方法 int z 3 与 int 相同z 3 Is int z z 3 same as int z z 3 您可以使用 int z z 3 Or just int z 3 Or int z 3 Or int z i
  • C 中的位移位

    如果与有符号整数对应的位模式右移 则 1 vacant bit will be filled by the sign bit 2 vacant bit will be filled by 0 3 The outcome is impleme
  • AccessViolationException 未处理

    我正在尝试使用史蒂夫 桑德森的博客文章 http blog stevensanderson com 2010 01 28 editing a variable length list aspnet mvc 2 style 为了在我的 ASP
  • 如何构建印度尼西亚电话号码正则表达式

    这些是一些印度尼西亚的电话号码 08xxxxxxxxx 至少包含 11 个字符长度 08xxxxxxxxxxx 始终以 08 开头 我发现这个很有用 Regex regex new Regex 08 0 9 0 9 0 9 0 9 0 9
  • 如何在内存中存储分子?

    我想将分子存储在内存中 这些可以是简单的分子 Methane CH4 C H bond length 108 7 pm H H angle 109 degrees But also more complex molecules like p
  • 在 ASP.NET 中将事件冒泡为父级

    我已经说过 ASP NET 中的层次结构 page user control 1 user control 2 control 3 我想要做的是 当控件 3 它可以是任何类型的控件 我一般都想这样做 让用户用它做一些触发回发的事情时 它会向
  • 将变量分配给另一个变量,并将一个变量的更改反映到另一个变量中

    是否可以将一个变量分配给另一个变量 并且当您更改第二个变量时 更改会瀑布式下降到第一个变量 像这样 int a 0 int b a b 1 现在 b 和 a 都 1 我问这个问题的原因是因为我有 4 个要跟踪的对象 并且我使用名为 curr
  • 为什么 strtok 会导致分段错误?

    为什么下面的代码给出了Seg 最后一行有问题吗 char m ReadName printf nRead String s n m Writes OK char token token strtok m 如前所述 读取字符串打印没有问题 但

随机推荐

  • MYSQL深入学习(一)

    1 mysql 体系结构 连接池组件 管理服务和工具组件 sql接口组件 查询分析器组件 优化器组件 查询缓存组件 插件式存储引擎 mysql的特点 可以根据需求 动态的配置存储引擎 物理文件
  • idea控制台输出中文乱码解决

    解决Intellij IDEA控制台logger info system out println等中文乱码问题 一 编写环境乱码 二 控制台打印乱码 又包含3种 当我们使用Intellij IDEA开发时 首当其冲就是中文乱码问题 造成中文
  • unity物体范围内随机生成

    这个脚本需要挂载到需要随机生成的物体上 但不能是空物体 using System Collections using System Collections Generic using UnityEngine public class Ran
  • CDN回源原理和CDN多级缓存

    一 CDN概念 CDN的全称是Content Delivery Network 即内容分发网络 其基本思路是尽可能避开互联网上有可能影响数据传输速度和稳定性的瓶颈和环节 使内容传输的更快 更稳定 CDN是通过在网络各处放置节点服务器所构成的
  • STL案例——评委打分案例

    有5名选手 选手ABCDE 10个评委分别对每一名选手打分 去除最高分 去除评委中最低分 取消平均分 1 创建五名选手 放到vector中 2 遍历vector容器 取出每一个选手 执行for循环 可以把10个评分打分存到deque容器中
  • Rxjs在Angular中的简单应用

    Angular中集成了Rxjs库 Rxjs是javascript的一个响应式编程库 它提供了很多api 可以很方便的处理和操作应用中的数据 我们在自己的angular项目中新建一个组件 ng generate component rx bu
  • Java多线程两种实现

    在java中实现多线程的方式有两种 一种是继承Thread类 另一个是实现Runnable接口 对于两种实现 各有优缺点 接下来进行对比总结一下 这两种方法 都可以实现多线程 以下为两种实现的写法 继承Thread类的方式 package
  • 五、语言特性之<=default,=delete、using、noexcept、override、final、以及和const对比>

    目录 一 default delete 1 首先我们要回顾一下编译器提供的默认函数 2 何时需要自定义big three 构造函数 拷贝构造 拷贝赋值 big five 新增移动构造函数 移动赋值函数 3 default delete关键字
  • Yearning做SQL审核

    系统环境 Centos7一 Inception安装 1 安装相关依赖包 yum install bison ncurses libs libncurses5 devel ncurses devel wget git cmake openss
  • C++模板特例化

    模板是用来写一些独立化特定类型的代码 但是对于有些类型 在处理时 细节上却有所差别 常见的如char 如 现在你打算写一个栈 可以用于任何数据类型 那你肯定首先想到的就是模板啦 template
  • LeetCode-797. All Paths From Source to Target

    Given a directed acyclic graph of N nodes Find all possible paths from node 0 to node N 1 and return them in any order T
  • 【满分】【华为OD机试真题2023 JAVA&JS】知识图谱新词挖掘1

    华为OD机试真题 2023年度机试题库全覆盖 刷题指南点这里 知识图谱新词挖掘1 知识点滑窗 时间限制 1s 空间限制 256MB 限定语言 不限 题目描述 小华负责公司知识图谱产品 现在要通过新词挖掘完善知识图谱 新词挖掘 给出一个待挖掘
  • C++ Primer 学习笔记 第十五章 面向对象程序设计

    面向对象程序设计 OOP 基于三个概念 数据抽象 只暴露类的接口 而如何实现的是不透明的 即类的接口和实现分离 继承 能实现相似的类型 动态绑定 忽略相似类型的区别 以统一方式使用它 继承关系联系在一起的类构成层次关系 在最低层有一个基类
  • 从海明校验码深入了解

    首先 海明校验码的学习看视频没看明白 看了博客有所感悟 1 海明校验码不是万能的 根据信息论也知道不可能 写在海明校验码之前 海明校验码的原理和我之前遇到的一道题目很像 10只老鼠试验1024瓶药是否有毒 有1024瓶药 其中已知有1瓶且只
  • java事务

    转载http blog csdn net foart archive 2009 06 11 4260864 aspx 一 什么是Java事务 通常的观念认为 事务仅与数据库相关 事务必须服从ISO IEC所制定的ACID原则 ACID是 原
  • SQL Server中使用convert转化长日期为短日期

    一般存入数据库中的时间格式为yyyy mm ddhh mm ss 如果要转换为yyyy mm dd 短日期格式 可以使用convert函数 下面是sqlserver帮助中关于convert函数的声明 使用 CONVERT CONVERT d
  • 保姆级系列教程-玩转Fiddler抓包教程(1)-HTTP和HTTPS基础知识

    1 简介 有的小伙伴或者童鞋们可能会好奇地问 不是讲解和分享抓包工具了怎么这里开始讲解HTTP和HTTPS协议了 这是因为你对HTTP协议越了解 你就能越掌握Fiddler的使用方法 反过来你越使用Fiddler 就越能帮助你了解HTTP协
  • FPGA原理与结构——时钟IP核原理学习

    一 前言 在之前的文章中 我们介绍了FPGA的时钟结构 FPGA原理与结构 时钟资源https blog csdn net apple 53311083 article details 132307564 spm 1001 2014 300
  • postgres基本操作(个人总结版)

    postgres 基本操作 登录 psql 连接数据库 默认用户和数据库都是postgres psql U
  • Qt开发基础(8)——自定义封装控件

    创建一个Widget之后 再进行新建如下设计师界面 创建好了就是这样多了一个smallwidget ui 假如我们需要将Spin Box和Horizontal Slider封装在一起 我们可以看到封装的小控件是一个QWidget类型 所以我