常用界面设计组件 —— 数字输入和显示组件

news2024/11/24 2:54:40

    • 2.3 数字输入和显示组件
      • 2.3.1 QSpinBox 与 QDoubleSpinBox
      • 2.3.2其它数值输入和显示组件

2.3 数字输入和显示组件

2.3.1 QSpinBox 与 QDoubleSpinBox

QSpinBox用于整数的显示和输入,一般显示十进制 数,也可以显示二进制、十六进制数,而且可以在显示 框中增加前缀或后缀。QDoubleSpinBox用于浮点数的 显示和输入,可以设置显示小数的位数,也可以设置显 示前缀和后缀。

设计如下窗口:

在这里插入图片描述

设计按钮对应的槽函数

// 槽函数,响应btnCalc按钮的点击事件
void Widget::on_btnCalc_clicked()
{
    // 获取输入的数量和单价
    int num = ui->sb_num->value();
    double price = ui->dsb_price->value();

    // 计算总价并设置到dsb_sum上
    double sum = num * price;
    ui->dsb_sum->setValue(sum);
}

可以在Designer中直接设置以下属性

在这里插入图片描述

对应的成员函数可以查阅QT官方手册。

在这里插入图片描述

2.3.2其它数值输入和显示组件

  • QSlider

    QSlider和QDial 2个组件都从QAbstractSlider继承而 来,有一些共有的属性。QSlider是滑动的标尺型组 件,滑动标尺上的一个滑块可以改变值。 QAbstractSlider的主要属性包括以下几种:

在这里插入图片描述

属于QSlider的专有属性有两个:

在这里插入图片描述

  • QDial

    QDial是仪表盘式的组件,通过旋转表盘获得输入 值。特有的属性包括:

    在这里插入图片描述

  • QProgressBar

    它的父类是QWidget,一般用于显示进度

在这里插入图片描述

  • QLCDNumber

    QLCDNumber是模拟LCD显示数字的组件,可以显 示整数或小数。小数点也算一个数位。

在这里插入图片描述

创建基于QMainWindow的工程,如下图所示:

在这里插入图片描述

在这里插入图片描述

增加的代码如下:

#include "mainwindow.h"
#include "ui_mainwindow.h"

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

    // 连接滑动条数值改变信号到槽函数on_slider_valueChanged
    connect(ui->slider_red, SIGNAL(valueChanged(int)),
            this, SLOT(on_slider_valueChanged(int)));
    connect(ui->slider_green, SIGNAL(valueChanged(int)),
            this, SLOT(on_slider_valueChanged(int)));
    connect(ui->slider_bule, SIGNAL(valueChanged(int)),
            this, SLOT(on_slider_valueChanged(int)));
    connect(ui->verticalSlider_ALPHA, SIGNAL(valueChanged(int)),
            this, SLOT(on_slider_valueChanged(int)));
}

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

void MainWindow::on_slider_valueChanged(int value)
{
    // 获取红、绿、蓝、透明度的值
    int red = ui->slider_red->value();
    int green = ui->slider_green->value();
    int blue = ui->slider_bule->value();
    int alpha = ui->verticalSlider_ALPHA->value();

    // 创建颜色对象
    QColor color;
    color.setRgb(red, green, blue, alpha);

    // 设置文本框背景颜色
    QPalette pal = ui->textEdit->palette();
    pal.setColor(QPalette::Base, color);
    ui->textEdit->setPalette(pal);

    // 计算颜色值总和并显示在lcdNumber_2上
    int sum_color = red + green + blue + alpha;
    ui->lcdNumber_2->display(sum_color);

    // 设置lcdNumber_2的样式
    ui->lcdNumber_2->setStyleSheet("background:transparent;color:#00ccff;");
}

void MainWindow::on_dial_sliderMoved(int position)
{
    // 获取滚轮的值,设置到进度条和lcdNumber上
    int value = ui->dial->value();
    ui->progressBar->setValue(value);
    ui->lcdNumber->display(value);
}

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

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

相关文章

基于SpringBoot的智慧社区居家养老健康管理系统

文章目录 项目介绍主要功能截图:部分代码展示设计总结项目获取方式 🍅 作者主页:超级无敌暴龙战士塔塔开 🍅 简介:Java领域优质创作者🏆、 简历模板、学习资料、面试题库【关注我,都给你】 &…

Shell脚本------变量

目录 一、shell脚本的变量 1、shell脚本的变量是什么? 2、变量的作用 3、变量作用范围 3.1、临时设置 3.2永久设置,需要在/etc/profile文件里添加 4、删除变量 5、变量基础 6、变量命名要求 7、特殊符号 8、整数运算 9、expr算术表达式 二、…

如何在WordPress网站中添加多语言搜索(2种简单方法)

您想在WordPress网站中添加多语言搜索吗? 如果您有一个多语言 WordPress 网站,那么添加多语言搜索功能可以帮助用户通过使用自己的语言进行搜索来更快地找到信息。 在本文中,我们将向您展示如何在 WordPress 中轻松添加多语言搜索&#xff…

“深入理解RabbitMQ交换机的原理与应用“

深入理解RabbitMQ交换机的原理与应用 引言1. RabbitMQ交换机简介介绍1.1 什么是RabbitMQ?1.1.1 消息中间件的作用1.1.2 RabbitMQ的特点和优势 1.2 RabbitMQ的基本概念1.2.1 队列1.2.2 交换机1.2.3 路由键 1.3 交换机的作用和分类1.3.1 直连交换机(direct…

32、WEB攻防——通用漏洞文件上传二次渲染.htaccess变异免杀

文章目录 一、点过滤二、文件删除三、二次渲染四、.htaccess五、过滤php关键函数 一、点过滤 不能写带文件后缀的文件名;IP转数字 二、文件删除 文件依据规则进行删除,删除有两种删除的类型: 什么文件都删除,条件竞争进行绕过…

linux zabbix监控

zabbix总结 zabbix-server 10051 zabbix-agent 10050 zabbix-proxy 10051 1.监控项(模板):获取监控数据 #模板直接链接到新的主机 2.触发器:设置一个值 在非合理区间报警 3.动作:可以帮忙发送通知(告…

深入理解Python循环嵌套

循环嵌套是一种常见的编程技巧,它可以用于处理多维数据结构、模拟多层逻辑等场景。本文将深入探讨Python中的循环嵌套,包括基本语法、应用场景以及一些最佳实践。 循环嵌套的基本语法 在Python中,循环嵌套指的是在一个循环语句的内部再嵌套另…

Microsoft Remote Desktop for Mac(远程桌面连接)激活版

Microsoft Remote Desktop是一款由微软开发的远程桌面连接工具,它允许用户从另一台计算机或移动设备远程连接到Windows桌面或服务器。 以下是该软件的一些主要特点和功能: 跨平台支持:Microsoft Remote Desktop支持Windows、macOS、iOS和Andr…

蓝桥杯(C++ 最大开支 优先队列)

优先队列: 蓝桥杯(C 整数删除 优先队列 )-CSDN博客 思路: 1、每个人依此选择项目,每个人选项目时都(选择当下花费增加最多的项目),若项目i的门票价格为kxb,那么增加一个…

爬取的数据可以入表吗?怎样入表?

合规是数据入表的前提。当前爬虫数据是非常敏感的,因为爬虫极容易造成两大不合规的问题:一是没有经过个人同意获取数据,二是爬取的数据里可能含有个人敏感信息也是一个问题。现在法律对于这部分非常严苛,如果企业里有50条未获得授…

RHCE【报警脚本】

要求如下: 根分区剩余空间小于20% 发送告警邮件给自己 配合crond每5分钟检查一次脚本 报警脚本的具体实现如下: #安装mailx(邮件服务包)[rootlocalhost ~]# yum install mailx #编辑邮件系统文件[rootlocalhost ~]# vim /etc/mail.rc#首先注…

关于在Ubuntu20.04(ROS1 noetic)中使用catkin_make编译时发生的与pyhton版本不兼容的问题解决办法

今天在另外一台电脑上操作复现【ROS建模:一起从零手写URDF模型】这个博客时,发生了一些问题,特此记录下来 【ROS建模:一起从零手写URDF模型】链接:https://blog.csdn.net/qq_54900679/article/details/135726348?spm…

CodeWave智能开发平台-3--采购管理系统搭建完整版

摘要 本文是网易数帆CodeWave智能开发平台系列的第15篇,主要介绍了基于CodeWave平台文档的新手入门进行学习,实现一个完整的应用-采购管理系统。 CodeWave智能开发平台-3–采购管理系统搭建完整版 CodeWave参考资源 网易数帆CodeWave开发者社区课程中…

JFinal项目搭建

JFinal项目搭建 JFinal项目搭建 JFinal项目搭建 首先创建maven项目&#xff1a; 删掉报错的jsp页面&#xff1a; 在pom.xml中加入坐标&#xff1a; <dependency> <groupId>com.jfinal</groupId> <artifactId>jfinal-undertow</artifactId>…

【Redis】内存淘汰策略和过期删除策略

一、前言 Redis是一个内存键值对数据库&#xff0c;所以对于内存的管理尤为重要。Redis内部对于内存的管理主要包含两个方向&#xff0c;过期删除策略和数据淘汰策略。由于内存有限&#xff0c;缓存系统必须遵循一些淘汰策略来删除一些不再需要的键&#xff0c;以便为新键腾出…

【学习】FPN特征金字塔

论文&#xff1a;Feature Pyramid Networks for Object Detection &#xff08;CVPR 2016) 参考blog&#xff1a;https://blog.csdn.net/weixin_55073640/article/details/122627966 参考视频讲解&#xff1a;添加链接描述 卷积网络中&#xff0c;深层网络容易响应语义特征&am…

java对代码进行性能分析

使用Instant对象来完成 关键代码: 获取当前时间 Instant now Instant.now(); 获取当前时间距离1970-01-01 00:00:00的秒数 now.getEpochSecond() 完整测试代码 Scanner sc new Scanner(System.in);Instant now1 Instant.now();System.out.println("请随便输个东西:…

进程线程知识

一 初识linux线程 1 线程由来 我们之前说创建一个进程&#xff0c;要创建进程控制块pcb&#xff0c;进程地址空间&#xff0c;页表&#xff0c;而且我之前的博客中都有意无意的说明这个pcb是描述进程的&#xff0c;是os用来管理进程的&#xff0c;而有了线程后&#xff0c;就要…

软件测试|SQL常用语法,你都会吗?

前言 SQL作为一门语言&#xff0c;和其他编程语言一样&#xff0c;都是需要遵循一些特定的规范和准则的&#xff0c;这也就是我们常说的语法&#xff08;Syntax&#xff09;。 下面是几个SQL的语法规则&#xff1a; 所有的 SQL 语法都必须以关键字&#xff08;也称命令&…

品牌如何把“流量”转为“留量”,媒介盒子分享

如果品牌一味追逐流量只能抓住一时的红利期&#xff0c;因此品牌需要把“流量”转为“留量”。依靠流量红利快速崛起的红利品牌&#xff0c;在流量法则失效后&#xff0c;就会陷入增长困境&#xff0c;今天媒介盒子就来和大家聊聊品牌如何把“流量”转为“留量”。 一、 差异化…