Qt常用控件——QSpinBox

news2024/9/25 21:30:42

文章目录

    • QSpinBox核心属性及信号
    • 点餐示例

QSpinBox核心属性及信号

QSpinBox或者QDoubleSpinBox表示微调框,带有按钮的输入框,可以用来输入整数/浮点数或者通过点击按钮调整数值大小

QSpinBoxQDoubleSpinBox用法基本相同,本篇以QSpinBox为例

核心属性

核心属性说明
value存储的数值
singleStep每次调整的“步长”(按一下按钮调整多少)
displayInteger数字的进制
minimum最小值
maximum最大值
suffix后缀
prefix前缀
wrapping是否允许换行
frame是否允许边框
alignment文字对齐方式
readOnly是否允许修改
buttonSymbol按钮上的图标:
UpDownArrows上下箭头形式
PlusMinus加减号形式
NoButtons没有按钮
accelerated按下按钮时是否为快速调整模式
corretionMode输入有误时,如何修正:
QAbstractSpinBox::CorrectToPreviousValue:如果输入无效值,恢复到上一个有效值
QAbstractSpinBox::CorrectToNearestValue:如果输入无效值,恢复到接近有效的值
keyboardTrack是否开启键盘跟踪:
true:每次在输入框输入一个数字,都会触发一次valueChanged()textChanged()信号
false:只有在最终按下enter或者输入框失去焦点时,才会触发valueChanged()textChanged()

核心信号:

信号说明
textChanged(QString)微调框的文本发生变化的时候触发
参数QString带有前缀和后缀
valueChanged(int)微调框的文本发生改变时触发
参数int表示当前数值

点餐示例

通过下拉框选择食物种类,通过微调框选择数量

界面设置:

image-20240915155813376

代码示例:

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

    //初始化下拉菜单
    ui->comboBox->addItem("米饭");
    ui->comboBox->addItem("馒头");
    ui->comboBox->addItem("面包");

    ui->comboBox_2->addItem("鱼香肉丝");
    ui->comboBox_2->addItem("红烧排骨");
    ui->comboBox_2->addItem("香辣鱿鱼");

    ui->comboBox_3->addItem("紫菜汤");
    ui->comboBox_3->addItem("绿豆汤");
    ui->comboBox_3->addItem("玉米汤");

    //设定spinBox范围
    ui->spinBox->setRange(1,5);
    ui->spinBox_2->setRange(1,5);
    ui->spinBox_3->setRange(1,5);

    ui->spinBox->setValue(1);
    ui->spinBox_2->setValue(1);
    ui->spinBox_3->setValue(1);
}

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


void Widget::on_pushButton_clicked()
{
    qDebug() << "订单内容: "
             << ui->comboBox->currentText() << ":" << ui->spinBox->value()
             << ui->comboBox_2->currentText() << ":" << ui->spinBox_2->value()
             <<ui->comboBox_3->currentText() << ":" << ui->spinBox_3->value();
}

GIF 2024-9-15 16-06-50

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

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

相关文章

Ubuntu 安装包下载(以20版本 阿里镜像站为例子)

Ubuntu安装包下载 上一篇文章写了一些国内常用的镜像站&#xff0c;这篇以阿里云镜像站Ubuntu20版本为例。 https://mirrors.aliyun.com/ubuntu-releases/ 1.点击自己想要下载的版本 2.点击以amd64.iso为结尾的文件&#xff0c;这个是安装文件&#xff0c;如果是桌面端&…

C++初阶学习——探索STL奥秘——vector的模拟实现

vector的结构比较特殊&#xff0c;成员变量为三个指针 #pragma once #include <iostream> using std::cin; using std::cout; using std::endl;#include <string> using std::string;namespace Yohifo {template<class T>class vector{public:typedef T val…

使用jmeter做性能测试实践过程中需要注意什么

前言 在驾驭Apache JMeter进行性能测试之旅中&#xff0c;深刻理解其特性和限制是至关重要的。以下是提升JMeter效能的关键策略&#xff0c;旨在挖掘其潜力&#xff0c;克服局限&#xff0c;实现精准测试。 1.精确调控线程数 推荐阈值&#xff1a;将线程数控制在300以内&…

模拟视频推到WVP推流列表

效果 1. wvp创建RTMP 2. 使用ffmpeg将本地的视频转为rtmp ffmpeg -re -i F:rtsp\123.mp4 -c copy -f flv rtmp://192.168.1.237:1935/cd/10001?sign=Z4Y3eYeSg

HTML5之canvas绘图

介绍 <canvas> 是 HTML5 引入的一个强大元素&#xff0c;允许直接在网页上进行矢量图形和位图图像的绘制&#xff0c;为网页提供了一个动态图形渲染的平台。这一特性极大丰富了网页的表现力&#xff0c;特别是在数据可视化、游戏开发、交互式图表和动画制作等领域发挥着…

第311题| 超好用!二重积分求旋转体体积公式|武忠祥老师每日一题

第一步&#xff1a; &#xff08;1&#xff09;找渐近线&#xff0c;先看水平渐近线&#xff0c;看x趋于无穷时&#xff0c;y有没有趋于一个有限的值。 , 得出水平渐近线y1。因为左右两边都是水平渐近线&#xff0c;所以没有斜渐近线。 第二步&#xff1a; 画出图像&#…

Spring Boot环境下的学生读书笔记共享

第4章 系统设计 4.1系统结构设计 读书笔记共享平台的设计主要是为了满足用户的实际需求。 因此&#xff0c;它需要通过Internet实现&#xff0c;因此它必须具备硬件和软件基础。该平台最终可以通过科学技术和各种方式达到支持智能化的信息管理的目的。因此&#xff0c;它必须具…

深入理解Python中的生成器:高效迭代与延迟计算的艺术

在处理大量数据时&#xff0c;如何有效地管理内存成为了一个关键问题。Python中的生成器&#xff08;Generator&#xff09;提供了一种优雅的解决方案&#xff0c;它允许你在迭代过程中按需生成数据&#xff0c;而不是一次性加载所有数据到内存中。本文将详细探讨生成器的工作原…

看Threejs好玩示例,学习创新与技术(三)

本文接上篇内容&#xff0c;继续挖掘应用ThreeJS的一些创新算法。 1、获得鼠标移动对应的地理位置 这个算法如果放在几年前&#xff0c;那肯定会难倒一帮人的。因为是三维投影涉及矩阵变换及求逆&#xff0c;而且还是投影模式下的。在Project Texture这个示例中&#xff0c;作…

Sentaurus TCAD的sdevice求解中选择Math求解方法

目录 并行迭代线性求解器&#xff08;ILS&#xff09;并行超节点直接求解器&#xff08;ParDiSo&#xff09;超节点直接求解器&#xff08;Super&#xff09;详细解释1. 并行迭代线性求解器&#xff08;ILS&#xff09;2. 并行超节点直接求解器&#xff08;ParDiSo&#xff09;…

windows安装docker、elasticsearch、kibana、cerebro、logstash

文章目录 1. 安装docker1.1. 两大要点1.1.1. 安装启用hyper-v电脑不存在hyper-v的情况 1.1.2. 下载安装docker 2. 在docker里面安装elasticSearch&#xff0c;kibana&#xff0c;cerebro3. 安装logstash-将数据导入到elasticSearch3.1 安装logstash3.1.1 注意事项3.1.1.1. 等了…

vue3中把封装svg图标为全局组件

在vue3中我们使用svg图标是下面这样子的 <svg style="width:30px;height:30px;"><use xlink:href="#icon-phone" fill="red"></use></svg>第次使用图标都要写这么多重复的代码,很不方便,所以,如果我们把它封装成全局…

“拍照赚钱”的任务定价(2017数学建模国赛b题)

文章目录 题目说明解题思路第一问第二问第三问第四问 部分结果图项目地址 题目 赛题地址 说明 数模国赛前的练手题。其实我个人感觉这道题很散&#xff0c;都是找一些规律进行总结统计&#xff0c;最多结合一些机器学习算法进行预测拟合之类的我刚开始用matlab&#xff0c;后…

[进阶]面向对象之 包 final

文章目录 包什么是包包名的规则:什么时候需要导包 final常量 包 什么是包 包就是文件夹。用来管理各种不同功能的Java类&#xff0c;方便后期代码维护。 包名的规则: 公司域名反写包的作用&#xff0c;需要全部英文小写&#xff0c;见名知意。使用其他类时&#xff0c;需要…

基于R语言的统计分析基础:使用键盘输入数据

在R语言中&#xff0c;键盘输入数据是一种灵活且直接的数据获取方式&#xff0c;适用于处理小数据集或需要即时用户交互的场景。通常用于交互式数据探索和分析、临时数据处理、交互式图形绘制、脚本自动化中的用户交互、特定应用场景下的数据录入中。 比如利用readline()函数根…

分享一些智慧农业数据集

持续更新中》》》 1.葡萄叶片病虫害数据集 数据集信息&#xff1a;yolo格式&#xff0c;适用于直接训练YOLO目标检测模型(yolo5 yolo8 yolo9 yolo10等)。数据集是已经标注好。训练集验证集已划分好&#xff0c;包含类别标签yaml文件&#xff0c;数据集可直接用于模型训练&…

第十二周:机器学习笔记

第十二周周报 摘要Abstract机器学习1. Recurrent Neural Network&#xff08;下&#xff09;1.1 RNN的Loss Function怎么求&#xff1f;1.2 RNN奇怪的特性1.3 如何解决 RNN 梯度消失或者爆炸1.4 RNN 其他应用 Pytorch学习1. 现有的网络模型使用以及其修改1.1 在VGG16模型添加Mo…

AD原理图编译

AD原理图检查项包括&#xff1a; 1.位号重复 2.网络悬浮 3.电源悬浮 4.单端网络 网络悬浮&#xff0c;在多页原理图时会比较明显,大部分是编译范围不是全部原理图&#xff0c;导致出现该情况&#xff0c;解决方法就是修改编译范围&#xff0c;将网络识别符范围改为全部即可。…

Qt常用控件——QComboBox

文章目录 核心属性、方法、信号模拟点餐文件加载 核心属性、方法、信号 QComboBox表示下拉框 核心属性&#xff1a; 属性说明currentText当前选中文本currentIndex当前选中的条目下标editable是否允许修改设置为true时&#xff0c;QComboBox的行为就非常接近于QLineEdit&…

Python | Leetcode Python题解之第406题根据身高重建队列

题目&#xff1a; 题解&#xff1a; class Solution:def reconstructQueue(self, people: List[List[int]]) -> List[List[int]]:people.sort(keylambda x: (-x[0], x[1]))n len(people)ans list()for person in people:ans[person[1]:person[1]] [person]return ans