Qt自定义控件(数字框与拖拽条互动)

news2024/9/20 22:32:20

一、效果

自定义红色区域组件,做到数字与拖拽条相互影响。

 二、实现

 

 输入合适的名字

 

 打开自定义组件ui

 

 选择合适的组件进行布局

 将两个空间的信号和值进行绑定

 新增自定义函数并实现

 

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

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

    //QSpinBox移动 QSlider更着移动

    void(QSpinBox:: * spSignal)(int)=&QSpinBox::valueChanged;
    connect(ui->spinBox,spSignal,ui->horizontalSlider,&QSlider::setValue);

    //QSlider滑动 QSpinBox数字跟着改变
    connect(ui->horizontalSlider,&QSlider::valueChanged,ui->spinBox,&QSpinBox::setValue);
}
//设置数字
void smallWidget::setNum(int num){
    ui->spinBox->setValue(num);
}
//获取数字
int smallWidget::getNum(){
    return ui->spinBox->value();
}
smallWidget::~smallWidget()
{
    delete ui;
}

 三、使用

绘制一个Widget,选择提升为smallWidget。

 

 新增两个功能按钮

 实现按钮功能

#include "widget.h"
#include "ui_widget.h"
#include<QDebug>
Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);

    //点击获取 获取当前空间当前的值
    connect(ui->btn_get,&QPushButton::clicked,[=](){
        qDebug()<<ui->widget->getNum();
    });
        //设置到一半
        connect(ui->btn_set,&QPushButton::clicked,[=](){
            ui->widget->setNum(50);
    });
}

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

 

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

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

相关文章

从架构角度看网络安全:数字化时代企业如何构建防御体系?

导语 | 数字化时代&#xff0c;网络安全已经成为企业发展的重中之重&#xff0c;通过体系化的安全建设&#xff0c;企业可以从容应对愈加复杂的网络安全挑战。今天&#xff0c;我们特邀了腾讯云 TVP、赛博英杰科技董事长 谭晓生老师&#xff0c;他将从资深技术专家视角解读如何…

vscode vue-helper插件导致vscode 自动换行快捷键失效

vue-helper插件&#xff1a;代码提示&#xff0c;点击文件路径快速跳转。 vue-helper导致vscode功能异常&#xff1a;自动换行的快捷键&#xff08;alt Z&#xff09;失效了。 因为我平时看代码的时候喜欢 换行和不换行之间来回切换&#xff0c;所以这个alt Z 我是经常用的。…

URL缩短服务:复杂问题的简洁解决方案

项目简介&#xff1a;TinyURL是一项在线服务&#xff0c;允许用户将长网址缩短为简洁的短网址&#xff0c;以便于分享和使用。这种服务尤其适用于社交媒体和电子邮件&#xff0c;因为这些平台对链接长度可能有限制。TinyURL的使用非常简单&#xff0c;只需在它的网站上输入长网…

【 Android11 WiFi开发 一 】WiFi列表获取与展示

前言 最近在Android11上开发了WiFi相关功能&#xff0c;涉及到WiFi列表的获取、连接有密码的WiFi、连接已保存的WiFi、忘记连接的WiFi、添加其他WiFi。涉及到的知识点较多作以分篇记录&#xff0c;本篇将介绍WiFi列表的获取与展示。 说明 下面梳理下WiFi列表获取流程&#xff1…

白嫖的text2video模型ZeroScope_v2

ZeroScope是一种基于ModelScope的视频生成模型&#xff0c;可以通过文本生成16:9的高质量视频。 Zeroscape 是一种基于 Transformer 架构的语言生成模型&#xff0c;其中包括了多种不同的变体和版本。其中&#xff0c;zeroscape_v2 是一种较新的模型&#xff0c;相较于之前的版…

浅谈电气火灾监控系统在高层建筑的应用

摘要&#xff1a;通过介绍上海某高层建筑电气火灾监控系统设计情况&#xff0c;对电气火灾监控系统工作特点和具体设计内容进行说明&#xff0c;同时提出一些设 计过程中需注意的事项&#xff0c;供业内人士借鉴&#xff0c;以期增进对电气火灾监控系统设计的重视&#xff0c;…

【vim】Linux种的vim

:q quit (close window) :w save (“write”) :wq save and quit :e {name of file} open file for editing :ls show open buffers :help {topic} open help :help :w opens help for the :w command:help w opens help for the w movement <ESC>进入vim模式 &l…

Python如何调用C库(Windows Linux)

软硬件环境 ubuntu 18.04 64bitwindows 10 64bitPython 3.8GCC 4.9visual studio 前言 在做 python 开发中&#xff0c;经常会碰到&#xff0c;需要通过调用 C 的一个动态链接库来获取相应的值。本文详细讲解了 Windows 和 Linux 2个平台上的不同实现。 linux版的动态库 写个简…

搬运/移植Anaconda配置的项目注意事项

从旧电脑上将项目搬运至新电脑时&#xff0c;搬运项目的时候&#xff0c;将原项目的环境也拷贝过去了&#xff0c;发现出现了问题&#xff0c;使用pip进行安装库的时候&#xff0c;怎么都用不了。错误内容为&#xff1a; Fatal error in launcher: Unable to create process us…

【算法与数据结构】541、LeetCode反转字符串 II

文章目录 一、题目二、解法三、完整代码 所有的LeetCode题解索引&#xff0c;可以看这篇文章——【算法和数据结构】LeetCode题解。 一、题目 二、解法 思路分析&#xff1a;本题自己写了一个swap函数&#xff0c;用来反转字符串&#xff0c;也可以用库函数reverse。然后是用in…

一文学会使用键盘控制moveit2机械臂模型

文章目录 前言一、官方样例实现软件版本bug修复运行测试 二、gp110机械臂控制文件添加文件修改编译工程运行测试 总结 前言 在之前文章的基础上相信大家已经学会了如何搭建一个机械臂模型&#xff0c;那么我们如何对其进行控制呢&#xff0c;上网检索了一下没找到能清晰指导实…

3.2 Java标识符

3.2 Java标识符 关键字&#xff0c;Java中一些预先设定好的单词被称为关键字常用关键字如下图所示 图中的关键字都是Java预先设定好的&#xff0c;在平时应用中不能用这些关键词作为名字来使用。因为Java已经赋予这些关键字一些意义不能直接使用&#xff0c;这些关键词是Java中…

真实遇到Redis双写一致性问题

今天工作中接到一个bug&#xff0c;产品那边描述&#xff0c; 在后台添加一个供应商后前台无法展示。 是个例还是全部&#xff1f;他说应该是个例。 开始分析。。。。。。。 首先数据库查询可以查出新添加的这个供应商的&#xff0c;说明添加成功的&#xff0c;唯一的问题肯定…

Baltamatica 北太天元 —— 基于模拟退火算法的旅行商问题

文章目录 北太天元&#xff08;Baltamatica&#xff09;简介Baltamatica 复现基于Matlab的旅行商问题问题描述模拟退火算法Metropolis准则算法流程图&#xff1a; Demo1&#xff1a;只考虑累计距离&#xff0c;通过模拟退火算法求解最短路径matlab代码&#xff1a;Baltam代码&a…

Go 语言基础语法:Hello World 实例(涉及定义变量;fmt 包、Print、Println、Printf)

Hello world实例 package mainimport "fmt"func main() {fmt.Println("Hello, World!") } 编译 运行 go run hello.go Hello, World! go run 做了编译和执行两动作&#xff0c;编译会生成 hello 文件&#xff0c;执行完成后此文件会被删除。 web展示 …

STM32外设系列—L298N

文章目录 一、L298N简介二、L298N电路图三、L298N使用方法四、L298N驱动电机实例4.1 麦克纳姆轮简介4.2 定时器PWM配置4.3 智能车行驶控制 五、拓展应用 一、L298N简介 L298N是SGS公司生产的一款通用的电机驱动模块。其内部包含4路逻辑驱动电路&#xff0c;有两个H桥的高电压大…

java并发编程 3:synchronized与锁(重点)

目录 共享问题synchronized锁及使用synchronized代码块synchronized 修饰成员方法synchronized 修饰静态方法 变量的线程安全分析成员变量和静态变量是否线程安全局部变量是否线程安全常见线程安全类 synchronized底层原理Java对象头Monitor管程字节码看原理 锁状态及转换四种锁…

vscode 快速修复(quick fix) 快捷键(Ctrl + .)被占用问题解决方法

vscode 快速修复(quick fix) 快捷键(Ctrl .)被占用 微软拼音的中/英文标点切换的快捷键为Ctrl .&#xff0c;与 vscode 快速修复(quick fix)快捷键冲突。修复方法如下&#xff1a; 切换到微软拼音&#xff0c;在输入法中或英字上&#xff0c;点击右键。 再点设置 - 按键。 …

MTK平台WLAN的Roaming机制和案例log解析

一 、WLAN漫游简介 [百度百科]:当网络环境存在多个相同SSID的AP,且它们的微单元互相有一定范围的重合时,无线用户可以在整个WLAN覆盖区内移动,无线网卡能够自动发现附近信号强度最大的AP,并通过这个AP收发数据,保持不间断的网络连接,这就称为无线漫游。 简单来说:WLA…

Flink中时间和窗口

文章目录 一、时间定义二、水位线(Watermark)1、概念2、水位线特征3、生成水位线3.1 水位线生成策略&#xff08;Watermark Strategies&#xff09;3.2 Flink 内置水位线生成器3.3 自定义水位线策略 4、水位线的传递 三、窗口(Window)1、概念2、窗口分类2.1 驱动类型分类2.2 窗…