qt5---步長調節器SpinBox和QDoubleSpinBox


 #include <QSpinBox>            #include <QDoubleSpinBox>

 QSpinBox 用於整數的顯示和輸入,一般顯示十進制數,也可以顯示二進制、十六進制的數,而且可以在顯示框中增加前綴或后綴

QDoubleSpinBox 用於浮點數的顯示和輸入,可以設置顯示小數位數,也可以設置顯示的前綴和后綴

QSpinBox 和 QDoubleSpinBox 都是 QAbstractSpinBox 的子類,具有大多數相同的屬性,只是參數類型不同

#include "win.h"
#include <QDebug>
#include <QPushButton>


Win::Win(QWidget *parent)
    : QWidget(parent)
{
    this->resize(500,400);
    this->setWindowTitle("步長調節器");

    QPushButton* btn=new QPushButton("按鈕",this);
    btn->move(400,350);
    connect(btn,&QPushButton::clicked,this,&Win::A);

    spin=new QSpinBox(this);  //創建QSpinBox控件
    dspin=new QDoubleSpinBox(this);//創建QDoubleSpinBox控件
    spin->move(10,10);
    dspin->move(200,10);

    spin->setRange(10,50);  //設置數值區間
    dspin->setRange(10,50);  //設置數值區間
    spin->setMaximum(20);    //設置最大值
    dspin->setMaximum(20);   //設置最大值
    spin->setMinimum(15);  //設置最小值
    dspin->setMinimum(15.0);  //設置最小值
    int i;
    double di;
    i=spin->minimum();   //返回最小值
    di=dspin->minimum();  //返回最小值
    i=spin->maximum();   //返回最大值
    di=dspin->maximum();  //返回最大值

    spin->setPrefix("前綴");  // 設置前綴
    dspin->setPrefix("前綴");  // 設置前綴
    spin->setSuffix("后綴");   //設置后綴
    dspin->setSuffix("后綴");   //設置后綴
    QString str=spin->prefix();  //返回前綴
    str=dspin->suffix();  //返回后綴

    spin->setSingleStep(2);   //設置步長
    dspin->setSingleStep(2.5);   //設置步長

    spin->setValue(17);  //設置值
    dspin->setValue(17);  //設置值
    i=spin->value();    //返回值--十進制-不包括前綴后綴
    di=dspin->value();    //返回值--十進制-不包括前綴后綴

    str=spin->cleanText();  //返回值-QString類型

    void(QSpinBox::* p)(int)=&QSpinBox::valueChanged;//這個信號是個參數重載函數,必須明確參數
    //自動傳遞int的值
    void(QSpinBox::* p1)(QString)=&QSpinBox::valueChanged;//這個信號是個參數重載函數,必須明確參數
    //自動傳遞QString的值
    connect(spin,p,this,&Win::B);  //值變化時發出信號


    qDebug()<<str;
    qDebug()<<di;

}

void Win::B(int x){
    qDebug()<<"值發生變化了:"<<x;
}
Win::~Win()
{

}


void Win::A(){



    //qDebug()<<item->text();
}

實例下載地址:https://share.weiyun.com/5zLRdxs   

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM