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);
}
相关推荐
lihongli00013 分钟前
ROS与Qt结合开发CAN控制界面(发布自定义的truck_send_can1消息)
开发语言·qt·ros
java1234_小锋22 分钟前
什么是Java三高架构?
java·开发语言·架构
如竟没有火炬32 分钟前
全排列——交换的思想
开发语言·数据结构·python·算法·leetcode·深度优先
嵌入式小李.man1 小时前
C++第十三篇:继承
开发语言·c++
Bryce李小白1 小时前
Kotlin Flow 的使用
android·开发语言·kotlin
jarreyer1 小时前
python离线包安装方法总结
开发语言·python
李辰洋1 小时前
go tools安装
开发语言·后端·golang
wanfeng_091 小时前
go lang
开发语言·后端·golang
绛洞花主敏明1 小时前
go build -tags的其他用法
开发语言·后端·golang
ByteCraze2 小时前
秋招被问到的常见问题
开发语言·javascript·原型模式