当前位置: 首页 > news >正文

60常用控件_QSpinBox的使用

目录

代码示例:调整麦当劳购物车中的份数


使⽤ QSpinBox 或者 QDoubleSpinBox 表⽰ "微调框", 它是带有按钮的输⼊框. 可以⽤来输⼊整

数/浮点数. 通过点击按钮来修改数值⼤⼩.
由于 SpinBox QDoubleSpinBox ⽤法基本相同, 就只介绍 SpinBox 的使⽤了
Spin 英⽂原意为 "旋转". 此处引申成 "微调".
事实上很多术语在翻译的时候, 不⼀定⾮要按照原始的翻译来表⽰, 更追求的是 "信达雅".
举个例⼦, 地铁上的 "Priority Seat" 会翻译成 "爱⼼专座", ⽽不是 "优先座位"
QSpinBox 关键属性
属性说明
value存储的数值
singleStep每次调整的 “步长”,按下一次按钮数据变化多少
displayInteger数字的进制,例如 displayInteger 设为 10,则是按照 10 进制表示,设为 2 则为 2 进制表示
minimum最小值
maximum最大值
suffix后缀
prefix前缀
wrapping是否允许换行
frame是否带边框
alignment文字对齐方式
readOnly是否允许修改
buttonSymbol按钮上的图标:
- UpDownArrows 上下箭头形式
- PlusMinus 加减号形式
- NoButtons 没有按钮
accelerated (加速的)按下按钮时是否为快速调整模式
correctionMode输入有误时如何修正:
- QAbstractSpinBox::CorrectToPreviousValue:如果用户输入了一个无效的值(例如,在只能显示正整数的 SpinBox 中输入负数),那么 SpinBox 会恢复为上一个有效值。例如,如果 SpinBox 的初始值是 1,用户输入了 - 1(无效),然后 SpinBox 会恢复为 1。
- QAbstractSpinBox::CorrectToNearestValue:如果用户输入了一个无效的值,SpinBox 会恢复为最接近的有效值。例如,如果 SpinBox 的初始值是 1,用户输入了 - 1(无效),那么 SpinBox 会恢复为 0。
keyboardTrack是否开启键盘跟踪:
设为 true,每次在输入框输入一个数字,都会触发一次 valueChanged () 和 textChanged () 信号。
设为 false,只有在最终按下 enter 或者输入框失去焦点,才会触发 valueChanged () 和 textChanged () 信号。
核⼼信号
信号说明
textChanged(QString)微调框的文本发生改变时会触发。参数 QString 带有 前缀 和 后缀。
valueChanged(int)微调框的文本发生改变时会触发。参数 int 表示当前的数值。

代码示例:调整麦当劳购物车中的份数


1)在界面上创建下列内容
三个下拉框:objectName为comboBox到comboBox_3
三个微调框:objectName为spinBox到spinBox_3
一个按钮:objectName为pushButton 

 2) 编写代码, 修改 widget.cpp, 给下拉框设置初始值.

3) 编写代码, 给按钮添加 slot 函数

4) 执⾏程序, 可以看到当⽤⼾选择不同的内容时, 点击按钮就能获取到对应的结果. 同时我们也⽆法输⼊ ⼀些超出范围的⾮法值.

点击按钮,数字就会发生“微调”
Spin Box 微调框

Spin 旋转
翻译英文要符合场景
”爱心专座“:Priority Seat

http://www.xdnf.cn/news/247627.html

相关文章:

  • [FPGA Video IP] Frame Buffer Read and Write
  • 一文读懂EMC VNX存储的Fast Cache(第二部分:对比)
  • 【RocketMQ】- 源码系列目录
  • 实习入职的总结
  • 前端八股 CSS 1
  • Chromium 134 编译指南 - Android 篇:从Linux版切换到Android版(六)
  • 2025智能体的发展趋势
  • 深⼊理解指针(8)
  • 简单的Qwen3的本地部署、分析与常见报错
  • Cribl 数据脱敏 更多方法 MASK (三)
  • 第十六届 -- 蓝桥杯Web开发大学组省赛个人复盘
  • ESP-ADF esp_dispatcher组件之audio_service子模块资源管理函数详解
  • RAGFlow上传3M是excel表格到知识库,提示上传的文件总大小过大
  • 基于Redis实现-附近商铺查询
  • UE实用地编插件Physical Layout Tool
  • MySQL | DQL语句-连接查询
  • linux 使用nginx部署next.js项目,并使用pm2守护进程
  • 加载ko驱动模块:显示Arm版本问题解决!
  • 小白如何入门Python爬虫
  • 【playwright】内网离线部署playwright
  • PMP-第九章 项目资源管理(一)
  • 机器学习实操 第一部分 机器学习基础 第8章 降维技术
  • 深度学习中卷积的计算复杂度与内存访问复杂度
  • 数字基带信号和频带信号的区别解析
  • ES6异步编程中Promise与Proxy对象
  • 小牛电动:荣登央视舞台,引领智能出行新潮流
  • c++26新功能——std::execution
  • 加密算法(一)-对称加密(DES、AES、3DES、Blowfish、Twofish)一篇了解所有主流对称加密,轻松上手使用。
  • mysql-窗口函数一
  • 链表系列一>合并 k 个升序链表