【嵌入式——QT】数值输入和显示组件

数值输入和显示组件

  • QSlider:滑动条,通过滑动来设置数值;
  • QScrollBar:卷滚条,与QSlider类似,还可以用于卷滚区域;
  • QProgressBar:进度条,一般用于显示任务进度,可用于数值的百分比显示;
  • QDial:表盘式数值输入组件,通过转到表针获得输入值;
  • QLCDNumber:模仿LCD数字的显示组件,可以显示整数或浮点数,显示整数时可以不同进制显示;

图片示例

在这里插入图片描述

代码示例

NumericalComponentDialog.h

#ifndef NUMERICALCOMPONENTDIALOG_H
#define NUMERICALCOMPONENTDIALOG_H

#include <QDialog>

namespace Ui
{
    class NumericalComponentDialog;
}

class NumericalComponentDialog : public QDialog
{
    Q_OBJECT

public:
    explicit NumericalComponentDialog(QWidget* parent = nullptr);
    ~NumericalComponentDialog();

private slots:
    void on_horizontalSlider_red_valueChanged(int value);

    void on_dial_valueChanged(int value);

    void on_radioButton_clicked();

    void on_radioButton_2_clicked();

    void on_radioButton_3_clicked();

    void on_radioButton_4_clicked();

private:
    Ui::NumericalComponentDialog* ui;
};

#endif // NUMERICALCOMPONENTDIALOG_H

NumericalComponentDialog.cpp

#include "NumericalComponentDialog.h"
#include "ui_NumericalComponentDialog.h"

NumericalComponentDialog::NumericalComponentDialog(QWidget* parent)
    : QDialog(parent)
    , ui(new Ui::NumericalComponentDialog)
{
    ui->setupUi(this);
    connect(ui->horizontalSlider_green, SIGNAL(valueChanged(int)), this, SLOT(on_horizontalSlider_red_valueChanged(int)));
    connect(ui->horizontalSlider_blue, SIGNAL(valueChanged(int)), this, SLOT(on_horizontalSlider_red_valueChanged(int)));
    connect(ui->horizontalSlider_alpha, SIGNAL(valueChanged(int)), this, SLOT(on_horizontalSlider_red_valueChanged(int)));
    //两侧有刻度
    ui->horizontalSlider_red->setTickPosition(QSlider::TicksBothSides);
    //上方有刻度
    ui->horizontalSlider_green->setTickPosition(QSlider::TicksAbove);
}

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

void NumericalComponentDialog::on_horizontalSlider_red_valueChanged(int value)
{
    QColor color;
    int R = ui->horizontalSlider_red->value();
    int G = ui->horizontalSlider_green->value();
    int B = ui->horizontalSlider_blue->value();
    int alpha = ui->horizontalSlider_alpha->value();
    color.setRgb(R, G, B, alpha);
    QPalette pal = ui->textEdit->palette();
    pal.setColor(QPalette::Base, color);
    ui->textEdit->setPalette(pal);
}


void NumericalComponentDialog::on_dial_valueChanged(int value)
{
    ui->lcdNumber->display(value);
}

//十进制
void NumericalComponentDialog::on_radioButton_clicked()
{
    ui->lcdNumber->setDigitCount(3);
    ui->lcdNumber->setDecMode();
}

//二进制
void NumericalComponentDialog::on_radioButton_2_clicked()
{
    ui->lcdNumber->setDigitCount(8);
    ui->lcdNumber->setBinMode();
}

//十六进制
void NumericalComponentDialog::on_radioButton_3_clicked()
{
    ui->lcdNumber->setDigitCount(3);
    ui->lcdNumber->setHexMode();
}

//八进制
void NumericalComponentDialog::on_radioButton_4_clicked()
{
    ui->lcdNumber->setDigitCount(4);
    ui->lcdNumber->setOctMode();
}


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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【Leetcode每日一题】二分查找 - 在排序数组中查找元素的第一个和最后一个位置(难度⭐⭐)(18)

1. 题目解析 Leetcode链接&#xff1a;34. 在排序数组中查找元素的第一个和最后一个位置 这个问题的理解其实相当简单&#xff0c;只需看一下示例&#xff0c;基本就能明白其含义了。 核心在于找到给定目标值所在的数组下标区间&#xff0c;设计一个O(logn)的算法。 2. 算法原…

集成测试之我的初步学习与总结

基本概念 将软件集成起来后进行测试。 集成测试又叫子系统测试、组装测试、部件测试等。集成测试主要是针对软件高层设计进行测试&#xff0c;一般来说是以模块和子系统为单位进行测试。 集成测试包含的层次 模块内的集成&#xff0c;主要是测试模块内各个接口间的交互集成…

【C++】用文件流的put和get成员函数读写文件

题目 编写一个mycopy程序&#xff0c;实现文件复制的功能。用法是在控制台输入&#xff1a; mycooy 源文件名 目标文件名 参数介绍 m a i n main main 函数的参数有两个&#xff0c;一个int类型参数和一个指针数组。 a r g c argc argc 表示参数的个数。参数为void时 a r g …

Github上最值得学习的10个Android开源项目,安卓面试题

1.Java语言进阶与Android相关技术核 Android应用是由Java语言进行开发的&#xff0c;SDK也是由Java语言编写&#xff0c;对于Android来说&#xff0c;只要SDK没有用Kotlin重写&#xff0c;那么Java语言是都需要学习的。而且Android APK的后台服务器程序大概率是Java语言构建&a…

一【初识EMC】

在作为硬件行业相关从业者&#xff0c;经常接触到EMC相关问题&#xff0c;下面来简单介绍下EMC相关方面的知识 文章目录 前言一、生活中的EMC现象&#xff1f;二、EMC是什么三、EMC的三要素四、EMI与EMS的评估方式1.RE2.CE3.HAR4.FLICKER5.Rs6.CS7.ESD8.EFT9.DIP10.PMS11.surge…

内置kpi接口短视频解析html源码

内置kpi接口短视频解析html源码&#xff0c;复制代码即可解析视频并 去水印 源码免费下载地址专业知识分享社区-专业知识笔记免费分享 (chaobiji.cn)

flutter旋转动画,Android彻底组件化方案实践方法

Android基础 & 常用 针对Android基础&常用知识&#xff0c;我认为对于初级开发者来说&#xff0c;按照优先级最主要的知识点主要包括&#xff1a;四大组件、布局使用、多线程 & 动画&#xff1b;具体介绍如下&#xff1a; 2. Android进阶 针对Android进阶知识&am…

Java通过Semaphore控制同一时间只有3个线程运行

怎么控制同一时间只有3个线程运行&#xff1f; 直接上代码 import java.util.Date; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurrent.Semaphore;public class SemaphoreThreadPoolExample {private static…

精酿啤酒:从原料到成品的质量控制流程

质量控制是啤酒酿造过程中重要的一环&#xff0c;它涉及到从原料选择到成品生产的每一个环节。Fendi Club啤酒对其质量控制流程有着严格的要求&#xff0c;以确保产品的品质和一致性。 Fendi Club啤酒对原料的选择进行严格把关。他们选用上好、新鲜的麦芽、水和酵母等原料&…

MySql安全加固:可信IP地址访问控制 设置密码复杂度

MySql安全加固&#xff1a;可信IP地址访问控制 & 设置密码复杂度 1.1 可信IP地址访问控制1.2 设置密码复杂度 &#x1f496;The Begin&#x1f496;点点关注&#xff0c;收藏不迷路&#x1f496; 1.1 可信IP地址访问控制 当您在创建用户时使用’%作为主机部分&#xff0c;…

zookeeper启动报错

启动zookeeper报错 从报错中可以看到 Invalid config, exiting abnormally 意思是&#xff1a;配置无效&#xff0c;异常退出 在往上看是没有zoo.cof这个配置文件 2024-02-27 14:47:03,285 [myid:] - ERROR [main:o.a.z.s.q.QuorumPeerMain99] - Invalid config, exiting…

怎样进入powershell状态?怎样获取powershell的help信息?

进入powershell的方法之一&#xff1a;在dos命令窗口运行powershell命令&#xff0c;系统输出版权信息&#xff0c;命令行提示符前面出现PS 标志。说明系统进入powerrshell状态&#xff08;如下图&#xff09;。 获取powershell的help信息方法&#xff1a; 在powershell命令行…

android适配器adapter,Android程序员架构之路该如何继续学习

便于开发的插件、工具和第三方开源库 1.GsonFormat 使用方法&#xff1a;快捷键AltS也可以使用AltInsert选择GsonFormat&#xff0c;作用&#xff1a;速将json字符串转换成一个Java Bean&#xff0c;免去我们根据json字符串手写对应Java Bean的过程。 2.ButterKnife Zelezny …

Windows批处理:bat文件学习

目录 第一章、快速了解Windows批处理1.1&#xff09;Windows批处理相关概念介绍1.1.1&#xff09;批处理的起源1.1.2&#xff09;bat文件介绍 1.2&#xff09;Demo1.2.1&#xff09;创建文件添加命令1.2.2&#xff09;bat脚本中的命令解释 第二章、实例2.1&#xff09;点击bat文…

Java集合容器面试题

Java集合容器面试题 前言1、同步容器与并发容器之间的关系&#xff1f;2、阻塞队列的作用&#xff1f;3、阻塞队列了解多少&#xff1f;4、BlockingQueue接口中的一些方法&#xff1f;5、Java中的集合类有几种&#xff1f;6、数组和集合的区别&#xff1f;7、ArrayList、LinkLi…

【二分】二分模板+二分题目

一、朴素二分 . - 力扣&#xff08;LeetCode&#xff09;. - 备战技术面试&#xff1f;力扣提供海量技术面试资源&#xff0c;帮助你高效提升编程技能,轻松拿下世界 IT 名企 Dream Offer。https://leetcode.cn/problems/binary-search/description/ int left 0, right nums.…

Windows Docker 部署 Jenkins

一、简介 今天介绍一下在 Windows Docker 中部署 Jenkins 软件。在 Windows Docker 中&#xff0c;分为两种情况 Linux 容器和 Windows 容器。Linux 容器是通常大多数使用的方式&#xff0c;Windows 容器用于 CI/CD 依赖 Windows 环境的情况。 二、Linux 容器 Linux 容器内部…

Mybatis | Mybatis的核心配置

目录: Mybatis的核心配置 :一、MyBatis的 “核心对象”1.1 SqlSessionFactory1.2 SqlSession :SqlSession对象中的操作数据库的方法 :\<T> T selectOne ( String statement )\<T> T selectOne( String statement , Object parameter )\<E> List\<E> se…

hudi索引

1.重点类 1.1.HoodieIndex 索引实现的基类&#xff0c;核心方法是两个&#xff1a;tagLocation和updateLocation   后续有不同的子类实现具体的索引 1.2.HoodieIndexFactory 没有具体这个类&#xff0c;是创建HoodieIndex的工厂类。具体操作类的名字以这个为后缀&#xff…

ESU毅速丨不锈钢材料为什么在金属3D打印中的广泛应用

不锈钢是一种传统且常见的材料&#xff0c;在金属3D打印领域应用最广。那么&#xff0c;为何不锈钢材料在3D打印中如此受欢迎呢&#xff1f;以下是几个关键原因。 卓越的工艺适应性 金属3D打印技术&#xff0c;如直接金属激光烧结&#xff08;DMLS&#xff09;和选择性激光熔融…
最新文章