Qt常用控件之微调框QSpinBox

微调框QSpinBox

QSpinBox 是一个微调框控件,它是一个带有按钮的输入框,可以用来输入整数修改或点击按钮修改数值大小。

QDoublieSpinBoxQSpinBox浮点数版本。

1. QSpinBox属性

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

2. QSpinBox制作一个点单菜单

cpp 复制代码
#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_3->addItem("百事可乐");
    ui->comboBox_3->addItem("可口可乐");
    ui->comboBox_3->addItem("雪碧");

    ui->spinBox->setValue(1);
    ui->spinBox->setRange(1,3);

    ui->spinBox_2->setValue(1);
    ui->spinBox_2->setRange(1,3);

    ui->spinBox_3->setValue(1);
    ui->spinBox_3->setRange(1,3);
}

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


void Widget::on_pushButton_clicked()
{
    QString content = ui->label_result->text();
    content+=ui->comboBox->currentText()+": "+QString::number(ui->spinBox->value())+"个 ";
    content+=ui->comboBox_2->currentText()+": "+QString::number(ui->spinBox_2->value())+"个 ";
    content+=ui->comboBox_3->currentText()+": "+QString::number(ui->spinBox_3->value())+"个 ";

    qDebug()<<content;
    ui->label_result->setText(content);
}
相关推荐
weixin_4373982139 分钟前
转Go学习笔记
linux·服务器·开发语言·后端·架构·golang
津津有味道1 小时前
Qt C++串口SerialPort通讯发送指令读写NFC M1卡
linux·c++·qt·串口通信·serial·m1·nfc
StrongerIrene1 小时前
rs build 的process.env的值undefined解决方案
开发语言·javascript·ecmascript
风逸hhh1 小时前
python打卡day58@浙大疏锦行
开发语言·python
Q_970956391 小时前
java+vue+SpringBoo足球社区管理系统(程序+数据库+报告+部署教程+答辩指导)
java·开发语言·数据库
傅里叶的耶1 小时前
C++系列(二):告别低效循环!选择、循环、跳转原理与优化实战全解析
c++·visual studio
Vitta_U2 小时前
MFC的List Control自适应主界面大小
c++·list·mfc
为了更好的明天而战2 小时前
Java 中的 ArrayList 和 LinkedList 区别详解(源码级理解)
java·开发语言
JosieBook2 小时前
【Java编程动手学】Java中的数组与集合
java·开发语言·python
qq_589568102 小时前
element-plus按需自动导入的配置 以及icon图标不显示的问题解决
开发语言·javascript·ecmascript