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);
}
相关推荐
励志的小陈3 分钟前
数据结构--队列(C语言实现)
c语言·开发语言·数据结构
mjhcsp8 分钟前
C++信息论超详解析
开发语言·c++
此生只爱蛋12 分钟前
【CAD】Parasolid:CAD的os
c++
無限進步D13 分钟前
Java 基础算法训练
java·开发语言·算法·入门
map1e_zjc16 分钟前
Java SpringBoot学习记录(4)
java·开发语言·学习
小毛驴85020 分钟前
多线程同步打标记的几种实现方案
java·开发语言·python
Mr_Xuhhh20 分钟前
递归之美:合并两个有序链表的优雅解法
java·开发语言
门左有棵树21 分钟前
蓝桥杯C++组算法知识点整理(考前急救)
c++·算法·蓝桥杯
bluebonnet2723 分钟前
【Python】一些PEP提案(五):注解的延迟求值
开发语言·python
橙露28 分钟前
Python 操作 MongoDB:非关系型数据查询与分析
开发语言·python·mongodb