QSpinBox

1 介绍

QSpinBox 是 Qt 中的一种数字输入控件,支持整数和浮点数输入。它允许用户通过上下箭头或键盘输入来选择数字。您可以设置最小值、最大值和步长,以限制用户输入的范围。QSpinBox 还支持前缀和后缀,您可以使用它们在数字前面或后面显示额外的信息。

2 函数

2.1 cleanText()

QString cleanText() const

此属性保存旋转框的文本,不包括任何前缀、后缀或前导或尾随空格。

2.2 displayIntegerBase()

int displayIntegerBase() const

返回 QSpinBox 用于显示整数的进制(十进制、八进制、十六进制等)。此函数用于获取当前 QSpinBox 使用的整数进制。

void setDisplayIntegerBase(int base)

设置 QSpinBox 用于显示整数的进制(十进制、八进制、十六进制等)。此函数接受一个 int 类型的参数,表示要使用的进制,例如 10 表示十进制,16 表示十六进制。

 QSpinBox *spinBox = new QSpinBox;
spinBox->setDisplayIntegerBase(16); // 设置为十六进制
spinBox->show();

2.3 最大最小值

int maximum() const

void setMaximum(int max)

int minimum() const

void setMinimum(int min)

void QSpinBox::setRange(int minimum, int maximum)

用于设置 QSpinBox 中允许输入的数字范围。此函数接受两个 int 类型的参数,分别表示最小值和最大值。

2.4 前缀后缀

QString prefix() const

void setPrefix(const QString &prefix)

QString suffix() const

void setSuffix(const QString &suffix)

2.5 步长

int singleStep() const

void setSingleStep(int val)

2.6 步长类型

QAbstractSpinBox::StepType stepType() const

void setStepType(QAbstractSpinBox::StepType stepType)

用于设置 QSpinBox 中每次增加/减少数字的步长。此函数接受一个 QAbstractSpinBox::StepType 类型的参数,表示步长类型。

QAbstractSpinBox::StepType 枚举定义了以下三种步长类型:

QAbstractSpinBox::DefaultStepType:默认步长,一般为 1。

QAbstractSpinBox::AdaptiveDecimalStepType:自适应步长,根据数字的大小自动调整步长。

QAbstractSpinBox::DefaultStepType:固定步长,可以通过 setSingleStep() 函数设置。

2.7 设置值

int value() const

void setValue(int val) slot[]

3 信号

void textChanged(const QString &text)

void valueChanged(int i)

4虚函数

4.1 textFromValue

virtual QString textFromValue(int value) const

textFromValue(int value) 是 QSpinBox 类中的一个虚函数,用于将数字转换为字符串。此函数接受一个 int 类型的参数,表示要转换的数字。函数返回一个 QString 类型的字符串,表示该数字的字符串表示。

4.2 valueFromText

virtual int valueFromText(const QString &text) const

valueFromText(const QString &text) 是 QSpinBox 类中的一个虚函数,用于将字符串转换为数字。此函数接受一个 QString 类型的参数,表示要转换的字符串。函数返回一个 int 类型的数字,表示该字符串所表示的数字。

4.3 event

virtual bool event(QEvent *event) override

event(QEvent *event) 是 QSpinBox 类中的一个虚函数,用于处理事件。它是从 QObject 类继承的。该函数接受一个 QEvent 类型的指针,表示要处理的事件。函数返回一个 bool 类型的值,表示事件是否已被处理。

4.4 fixup

virtual void fixup(QString &input) const override

fixup(QString &input) 是 QSpinBox 类中的一个虚函数,用于在用户输入不正确的值时修复该值。它是从 QValidator 类继承的。该函数接受一个 QString 引用,表示要修复的字符串。

4.5 validate

virtual QValidator::State validate(QString &text, int &pos) const override

用于在用户输入字符串时验证该字符串是否有效。它是从 QValidator 类继承的。该函数接受两个参数:一个 QString 引用,表示要验证的字符串;一个 int 引用,表示光标的位置。该函数返回一个 QValidator::State 枚举值,表示该字符串的有效性。

QValidator::State 是一个枚举类型,表示字符串的有效性。它有以下三个枚举值:

  • QValidator::Invalid:表示字符串无效。
  • QValidator::Intermediate:表示字符串的有效性尚未确定,需要继续输入。
  • QValidator::Acceptable:表示字符串有效。

QT(8)-QSpinBox的更多相关文章

  1. QT学习笔记2

    初探信号槽 代码如下: QPushButton *button=new QPushButton("quit"); QObject::connect(button,SIGNAL(cl ...

  2. 《Qt 实战一二三》

    简介 "我们来自Qt分享&&交流,我们来自Qt Quick分享&&交流",不管你是笑了,还是笑了,反正我们是认真的.我们就是要找寻一种Hold不住的 ...

  3. 用QT创建新风格: QStyle

    转贴: http://hi.baidu.com/yjj2008/blog/item/6cd4a1892ef0d4b60f2444a5.html 本文介绍了如何使用qt提供的接口来设计自己的GUI风格( ...

  4. 4.QT:spinbox(spindoublebox)控件的信号响应

    Qt的QSpinBox和QDoubleSpinBox两个控件在默认情况下是valueChanged信号,会响应每次输入栏的改变. 比如想要输入数值"123",我们会依次键入1 - ...

  5. QStyle

    转贴: http://hi.baidu.com/yjj2008/blog/item/6cd4a1892ef0d4b60f2444a5.html 本文介绍了如何使用qt提供的接口来设计自己的GUI风格( ...

  6. Qt error ------ no matching function for call to QObject::connect(QSpinBox*&, <unresolved overloaded function type>, QSlider*&, void (QAbstractSlider::*)(int))

    connect(ui->spinBox_luminosity,&QSpinBox::valueChanged, ui->horizontalSlider_luminosity, & ...

  7. Qt QSpinBox 和 QDoubleSpinBox

    展示一个效果: QDoubleSpinBox跟QSpinBox类似,只是多了一个decimal.

  8. 【Qt开发】常用控件--QSpinBox和QDoubleSpinBox

    QSpinBox和QDoubleSpinBox 是UI设计常用的控件. QSpinBox可用于显示和输入整数,并可以在显示框中添加前缀或后缀. QDoubleSpinBox可用于显示和输入小数,并可以 ...

  9. PyQt(Python+Qt)学习随笔:QSpinBox数字设定部件简介

    专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt入门学习 老猿Python博文目录 老猿学5G博文目录 在输入部件中,数字调整框QSpinBox是个很实用 ...

  10. Qt控件样式 Style Sheet Demo

    迟来的笔记,作为一个程序员每日记事已养成习惯,离开许久,不知不觉已喜欢用文字表达对技术的热爱,学无止境! Qt – 一个跨平台应用程序和UI开发框架:它包括跨平台类库.集成开发工具和跨平台 IDE,使 ...

随机推荐

  1. 说说 Go 语言的坑(二)

    上一篇文章 说说 Go 语言 for-range 的坑 说的是 for-range 的,工作中,其实还是遇到蛮多奇奇怪怪的问题,这里也顺便整理了一下,就当作是续集:) 先继续看 for-range 的 ...

  2. 2023-07-19:布尔表达式 是计算结果不是 true 就是 false 的表达式 有效的表达式需遵循以下约定: ‘t‘,运算结果为 true ‘f‘,运算结果为 false ‘!(subExpr

    2023-07-19:布尔表达式 是计算结果不是 true 就是 false 的表达式 有效的表达式需遵循以下约定: 't',运算结果为 true 'f',运算结果为 false '!(subExpr ...

  3. Word转换HTML(Java实用版)

    前言: 在业务中,如果需要在浏览器中预览Word文档,或者需要将Word文档转成HTML文件保存,那么本章内容,可以帮助到你. 实现这一功能,有多种实现方式,如:docx4j.poi.Free Spi ...

  4. 手机免root安装最新青龙面板(非Alpine term | Zero term软件)

    使用软件:Termux 可以用于任何支持qemu虚拟机的环境.APP 制作了基本的系统环境.开发环境和青龙面板环境.多个虚拟机,按需求下载 官方网站:https://api.wer.plus 群:10 ...

  5. DBSCAN聚类

    一.概述   DBSCAN(Density-Based Spatial Clustering of Applications with Noise)是一种基于密度的聚类算法,簇集的划定完全由样本的聚集 ...

  6. [kvm]cpu内存硬盘配置

    修改CPU配置 如果配置了最大CPU # 临时 virsh setvcpus test 2 # 永久 virsh setvcpus test 2 --config 热增加虚拟机的CPU数后,使用lsc ...

  7. HTML5CSS3基础

    目录 HTML5CSS3基础 1 2D 转换 1.1 二维坐标系 1.2 2D 转换之移动 translate 1.3 2D 转换之旋转 rotate 1.4 2D 转换中心点 transform-o ...

  8. C#的重载决策

    重载是许多编程语言支持的特性.所谓重载,就是指可以定义多个名称相同但参数(个数.类型和顺序)不同的方法(函数).先来看一个例子: void Main() { char cvalue = 'a'; ma ...

  9. 4.2 C++ Boost 内存池管理库

    Boost 库是一个由C/C++语言的开发者创建并更新维护的开源类库,其提供了许多功能强大的程序库和工具,用于开发高质量.可移植.高效的C应用程序.Boost库可以作为标准C库的后备,通常被称为准标准 ...

  10. 深入分布式一致性:Raft 和 etcdRaft

    分布式一致性是构建可靠的分布式系统的关键要素之一.为了确保数据的一致性和可用性,一致性算法的设计变得至关重要.在这篇博文中,我们将深入探讨两个与分布式一致性密切相关的主题:Raft 算法和 etcdR ...