欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

QT實(shí)現(xiàn)將兩個(gè)時(shí)間相加的算法[hh:?mm?+?hh:?mm]的示例代碼

 更新時(shí)間:2022年07月13日 09:07:18   作者:紅客白帽  
本文主要介紹了QT實(shí)現(xiàn)將兩個(gè)時(shí)間相加的算法[hh:?mm?+?hh:?mm]的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

【1】簡(jiǎn)介

本次寫作是在實(shí)際項(xiàng)目中需要,進(jìn)行的時(shí)間算法,本人通過QT時(shí)間戳的方式,是無(wú)法實(shí)現(xiàn)兩個(gè)時(shí)間相加的。但是又必須添加這個(gè)項(xiàng)目功能,于是自己寫了一份時(shí)間算法,主要是時(shí)分的形式,例如: 12:59 + 9:59這種形式。
另外如果各位博主有更好的算法或者函數(shù)庫(kù)提供,請(qǐng)?jiān)谙路礁缴?link

【2】標(biāo)志位

首先介紹實(shí)現(xiàn)的這兩個(gè)函數(shù):
void setTreatmentEndtime();//系統(tǒng)時(shí)間+我設(shè)定的時(shí)間=總的需要時(shí)間
void setRinseTimeStartAndEnd(QString Val);//將分鐘轉(zhuǎn)換為標(biāo)準(zhǔn)時(shí)分格式,在相加

需要設(shè)置的標(biāo)志位:

//mainwindow.h
private://======================【SJY新增】
    uint8_t endtime_buttonflag;//剩余時(shí)間和結(jié)束時(shí)間切換標(biāo)志位 【記得在構(gòu)造函數(shù)初始化=0】
    QString Sys_time;//記錄系統(tǒng)時(shí)間  【只要一次,所以需要設(shè)置標(biāo)志位】
    QString MandatoryRinse;//記錄強(qiáng)制沖洗時(shí)間 【只要一次需要設(shè)置標(biāo)志位】

【3】系統(tǒng)時(shí)間+設(shè)定的時(shí)間【源碼附上】

請(qǐng)看上圖,在ui設(shè)計(jì)中往往需要顯示系統(tǒng)時(shí)間和日期,而日期不可能禁止不動(dòng),需要實(shí)時(shí)刷新,這就不得不提出QT當(dāng)中的定時(shí)器

第一步創(chuàng)建定時(shí)器并且開啟

【1】在頭文件添加日期時(shí)間頭QDateTime
【2】toString的意思是將當(dāng)前的日期時(shí)間轉(zhuǎn)換為字符串,參數(shù)是時(shí)間格式,參考【QT手冊(cè)assistant
【3】在ui界面隨便設(shè)置兩個(gè)標(biāo)簽,將獲取的字符串時(shí)間設(shè)置顯示即可

//刷新時(shí)間【由定時(shí)器開啟】 1s跑一次
void MainWindow::refresh_time()
{
    ui->label_date->setText(QDateTime::currentDateTime().toString("yyyy/MM/dd"));
    ui->label_time->setText(QDateTime::currentDateTime().toString("hh:mm:ss"));
}

上面的函數(shù)是由定時(shí)器開啟的,具體如下:
【1】在mainwindow.h添加定時(shí)器的頭文件QTime和對(duì)象 private: QTimer timer;
【2】將定時(shí)器對(duì)象通過connect函數(shù)形成信號(hào)與槽,信號(hào)發(fā)送函數(shù)timeout(); 槽接收函數(shù)refresh_time();
【3】&timer:對(duì)象地址【棧對(duì)象需要添加取址符&, 指針對(duì)象直接寫名字,不需要&,本身就是地址】信號(hào)的發(fā)送者
【4】 timer.start(1000) :開啟定時(shí)器,1s,也就是超過1s后會(huì)觸發(fā)timeout()信號(hào),start(參數(shù)是整形毫秒)
【5】timeout(): 信號(hào)發(fā)射函數(shù),由定時(shí)器對(duì)象發(fā)射
【6】this:信號(hào)的接收者,this代碼接收的是本類對(duì)象
【7】refresh_time(): 槽函數(shù),由信號(hào)timeout觸發(fā),是本類對(duì)象的信心接收函數(shù)

//時(shí)間顯示
    connect(&timer, SIGNAL(timeout()), this, SLOT(refresh_time()));
    timer.start(1000);//1s開啟

第二步兩個(gè)時(shí)間相加函數(shù)【已實(shí)現(xiàn)附上代碼】

在多個(gè)MCU工作時(shí),以下圖片
第一個(gè)剩余時(shí)間:代表治療某個(gè)病人,還需要多久
第二個(gè)結(jié)束時(shí)間:剩余結(jié)束時(shí)間+系統(tǒng)時(shí)間=醫(yī)生幾點(diǎn)可以下班【目的是為了直觀顯示】
系統(tǒng)時(shí)間已經(jīng)在上面顯示在ui了,對(duì)于label標(biāo)簽通過text()即可獲取ui上的文本,系統(tǒng)時(shí)間獲??;
剩余時(shí)間保存在一個(gè)數(shù)組,比如初始值=4:59

//治療剩余時(shí)間和結(jié)束時(shí)間的切換  【SJY新增】
void MainWindow::setTreatmentEndtime()
{
    if(endtime_buttonflag == 0){
        bool ok;
        uint32_t mm,hh;
        QStringList m1; QStringList m2;
        QString m3; QString m4;  QString m5; QString m6;  QString h2; QString h1;
        //QString time1_hm = data_lib->Get_Value(279);//保存在數(shù)組里
        QString time1_hm = ui->label_timeleft->text();//獲取ui上的剩余時(shí)間
        QString time2_hm=ui->label_time->text();//獲取ui上的系統(tǒng)時(shí)間
        m1 = time1_hm.split(":");//9:59
        m2 = time2_hm.split(":");//例如:23:59
        m3 = m1.at(0);//9
        m4 = m1.at(1);//59
        m5 = m2.at(0);//23
        m6 = m2.at(1);//59
        mm =m4.toInt(&ok,10)+m6.toInt(&ok,10);//分鐘
        hh =m3.toInt(&ok,10)+m5.toInt(&ok,10);//小時(shí)
        qDebug()<<m3<<m4<<m5<<m6<<hh<<mm<<endl;
        if((mm >=60)&&(mm <100))//分鐘不能大于60   大于增加一個(gè)小時(shí)
        {
            if(mm == 60)//小時(shí)加1
            {
                m4 = QString("0");
                m3 = QString("0");
            }
            else//>60
            {
                    //小時(shí)加1  并且拼接出分鐘數(shù)值
                if(( mm>=61) &&(mm<=69))//01-09
                {
                    m4 = QString("%1").arg(mm%60).at(0);//余數(shù)時(shí)5
                    m3 = QString("0");
                }
                else
                {
                    m4 = QString("%1").arg(mm%60).at(1);
                    m3 = QString("%1").arg(mm%60).at(0);
                }
            }
            //小時(shí)計(jì)算和求值
            if(hh >23)//半夜三更
            {
                h2 = QString("%1").arg(QString("%1").arg(hh%24).toInt()+1);
                h1 = QString("0");
            }
            else if(hh == 23)//晚上:00.00
            {
                h1 = QString("%1").arg(QString("0").toInt()+1);
                h2 = QString("0");
            }
            else if(hh>=10&&hh<=22)//10-22
           {

              QString temp  = QString("%1").arg(hh%24);//19
              uint8_t  ret = temp.toInt()+1;//20  //11-23
              h2 = QString("%1").arg(ret).at(1);
               if(ret >= 20)
               {
                   h1 = QString("%1").arg(ret).at(0);
               }
               else
               {
                   h1 = QString("%1").arg(hh%24).at(0);
               }
           }
            else //<10
            {

                QString temp  = QString("%1").arg(hh%24);//=9
                uint8_t  ret = temp.toInt()+1;
                if(ret ==10)//10:00
                {
                         h1 = QString("1");
                         h2 = QString("0");
                }
                else {
                    h1 = QString("0");
                    h2 = QString("%1").arg(ret);
                }
            }
        }
        else if(mm >= 100)//大于等于100   mm最大時(shí)59+59=118
        {
            m4 = QString("%1").arg(mm%60).at(1);
            m3 = QString("%1").arg(mm%60).at(0);
            uint8_t rethh = mm/60;//轉(zhuǎn)化為小時(shí)
             //小時(shí)計(jì)算和求值
             if(hh >23)//半夜三更
             {
                 h2 = QString("%1").arg(QString("%1").arg(hh%24).toInt()+rethh);
                 h1 = QString("0");
             }
             else if(hh == 23)//晚上:00.00
             {
                 h1 = QString("%1").arg(QString("0").toInt()+rethh);
                 h2 = QString("0");
             }
             else if(hh>=10&&hh<=22)
            {

               QString temp  = QString("%1").arg(hh%24);//=10
               uint8_t  ret = temp.toInt()+rethh;
               h2 = QString("%1").arg(ret).at(1);
                h1 = QString("%1").arg(hh%24).at(0);
            }
             else //<10
             {

                 QString temp  = QString("%1").arg(hh%24);//=9
                 uint8_t  ret = temp.toInt()+rethh;
                 if(ret ==10)//10:00
                 {
                          h1 = QString("1");
                          h2 = QString("0");
                 }
                 else {
                     h1 = QString("0");
                     h2 = QString("%1").arg(ret);
                 }
             }
        }
       else  if(mm<10 )
        {
            m4 = QString("%1").arg(mm%60);
            m3 = QString("%1").arg(0);
            //小時(shí)計(jì)算和求值
            if(hh >23)//半夜三更
            {
                h2 = QString("%1").arg(QString("%1").arg(hh%24).toInt());
                h1 = QString("0");
            }
            else if(hh == 23)//晚上:00.00
            {
                h1 = QString("%1").arg(QString("0").toInt());
                h2 = QString("0");
            }
            else if(hh>=10&&hh<=22)
           {
                QString temp  = QString("%1").arg(hh%24);//=10
                uint8_t  ret = temp.toInt();
                h2 = QString("%1").arg(ret).at(1);
                h1 = QString("%1").arg(hh%24).at(0);
           }
            else //hh<10
            {
                uint8_t temp  = QString("%1").arg(hh%24).toInt();//=9
                h1 = QString("0");
                h2 = QString("%1").arg(temp);
            }
        }
        else//     10<=mm>=59
        {
                m4 = QString(QString("%1").arg(mm%60).at(1));
                m3 = QString(QString("%1").arg(mm%60).at(0));

                //小時(shí)計(jì)算和求值
                if(hh >23)//半夜三更
                {
                    h2 = QString("%1").arg(QString("%1").arg(hh%24).toInt());
                    h1 = QString("0");
                }
                else if(hh == 23)//晚上:00.00
                {
                    h1 = QString("%1").arg(QString("0").toInt());
                    h2 = QString("0");
                }
                else if(hh>=10&&hh<=22)
               {
                    QString temp  = QString("%1").arg(hh%24);//=10
                    uint8_t  ret = temp.toInt();
                    h2 = QString("%1").arg(ret).at(1);
                    h1 = QString("%1").arg(hh%24).at(0);
               }
                else //hh<10
                {
                    uint8_t temp  = QString("%1").arg(hh%24).toInt();//=9
                    h1 = QString("0");
                    h2 = QString("%1").arg(temp);
                }
        }
            ui->label_endtime->setText(QString("%1%2:%3%4").arg(h1).arg(h2).arg(m3).arg(m4));//總治療剩余時(shí)間
            ui->label_26->hide();
            ui->label_timeleft->hide();
            ui->label_endtime->show();
            ui->label_timeend->show();
            endtime_buttonflag =1;
    }
    else if(endtime_buttonflag ==1){
            ui->label_26->show();
            ui->label_timeleft->show();
            ui->label_endtime->hide();
            ui->label_timeend->hide();
            endtime_buttonflag =0;
    }
}

第三步實(shí)現(xiàn)的效果截圖
系統(tǒng)時(shí)間

剩余時(shí)間

【1】剛開始顯示的是剩余時(shí)間,默認(rèn)值,可通過按鈕設(shè)置
【2】在這個(gè)時(shí)間背后我添加了一個(gè)原型按鈕
【3】點(diǎn)擊原型按鈕可以切換剩余時(shí)間和結(jié)束時(shí)間【方便醫(yī)護(hù)人員及時(shí)及時(shí)下班】

結(jié)束時(shí)間=剩余時(shí)間+系統(tǒng)時(shí)間

【4】系統(tǒng)時(shí)間+清洗時(shí)間【附上源碼】

【1】效果跟上面時(shí)一個(gè)道理,只是這里的清洗時(shí)間是分鐘,范圍是3-999,需要將清洗時(shí)間分鐘轉(zhuǎn)化為時(shí)分:hh:mm
【2】系統(tǒng)時(shí)間算法跟上面的一樣 hh:mm
【3】想要的效果:
開始時(shí)間:hh:mm不變
結(jié)束時(shí)間=系統(tǒng)時(shí)間+清洗時(shí)間 hh:mm 跟隨清洗時(shí)間的變化而變化
【4】清洗時(shí)間由控制MCU->發(fā)送通信給-》監(jiān)控MCU->UI顯示【實(shí)時(shí)變化】

第一步直接附上代碼

//計(jì)算各個(gè)清洗按鈕界面的開始時(shí)間和結(jié)束時(shí)間【SJY新增】
void MainWindow::setRinseTimeStartAndEnd(QString Val)
{
    if(Val == "水洗"){//3-999
            static uint8_t flag =0;
            if(flag == 0)//第一次進(jìn)入
            {
                  Sys_time.clear();
                  Sys_time = ui->label_time->text();//獲取系統(tǒng)時(shí)間
                  //qDebug()<<"Sys_time--------------------"<<Sys_time;
                  ui->label_Rinsestarttime->setText(tr(QString("開始時(shí)間 %1:%2").arg(Sys_time.split(":").at(0)).arg(Sys_time.split(":").at(1)).toUtf8().data()));
                  flag =1;//一直保留這個(gè)值
            }
             //QString Water_time = QString("0:%1").arg(ui->stage1_time_1->text().split(" ").at(0));//水洗時(shí)間分鐘
            QString Water_time = QString("%1").arg(data_lib->Get_Value(71));//水洗時(shí)間分鐘
            uint8_t hmus,min;
            uint32_t Total_time=Water_time.toInt();
            if(Total_time >59)
            {
                    Water_time.clear();
                    hmus = Total_time/60;//小時(shí)
                    min= Total_time%60;//分
                    Water_time = QString("%1:%2").arg(hmus).arg(min);
            }
            else
            {
                     Water_time.clear();
                     Water_time = QString("0:%1").arg(Total_time);
            }
             bool ok;
             uint32_t mm,hh;
             QStringList m1; QStringList m2;
             QString m3; QString m4;  QString m5; QString m6;  QString h2; QString h1;
             m1 = Water_time.split(":");//9:59
             m2 = Sys_time.split(":");//例如:23:59
             m3 = m1.at(0);//9
             m4 = m1.at(1);//59
             m5 = m2.at(0);//23
             m6 = m2.at(1);//59
             mm =m4.toInt(&ok,10)+m6.toInt(&ok,10);//分鐘
             hh =m3.toInt(&ok,10)+m5.toInt(&ok,10);//小時(shí)
             qDebug()<<m3<<m4<<"\n"<<m5<<m6<<"\n"<<hh<<mm<<endl;
            if((mm >=60)&&(mm <100))//分鐘不能大于60   大于增加一個(gè)小時(shí)
            {
                 if(mm == 60)//小時(shí)加1
                 {
                     m4 = QString("0");
                     m3 = QString("0");
                 }
                 else//>60
                 {
                         //小時(shí)加1  并且拼接出分鐘數(shù)值
                     if(( mm>=61) &&(mm<=69))//01-09
                     {
                         m4 = QString("%1").arg(mm%60).at(0);//余數(shù)時(shí)5
                         m3 = QString("0");
                     }
                     else
                     {
                         m4 = QString("%1").arg(mm%60).at(1);
                         m3 = QString("%1").arg(mm%60).at(0);
                     }
                 }
                 //小時(shí)計(jì)算和求值
                 if(hh >23)//半夜三更
                 {
                     h2 = QString("%1").arg(QString("%1").arg(hh%24).toInt()+1);
                     h1 = QString("0");
                 }
                 else if(hh == 23)//晚上:00.00
                 {
                     h1 = QString("%1").arg(QString("0").toInt()+1);
                     h2 = QString("0");
                 }
                 else if(hh>=10&&hh<=22)
                {
                   QString temp  = QString("%1").arg(hh%24);//19
                   uint8_t  ret = temp.toInt()+1;//20  //11-23
                   h2 = QString("%1").arg(ret).at(1);
                    if(ret >= 20)
                    {
                        h1 = QString("%1").arg(ret).at(0);
                    }
                    else
                    {
                        h1 = QString("%1").arg(hh%24).at(0);
                    }
                }
                 else //hh<10
             {

                 QString temp  = QString("%1").arg(hh%24);//=9
                 uint8_t  ret = temp.toInt()+1;
                 if(ret ==10)//10:00
                 {
                          h1 = QString("1");
                          h2 = QString("0");
                 }
                 else {
                     h1 = QString("0");
                     h2 = QString("%1").arg(ret);
                 }
             }
            }
            else if(mm >= 100)//大于等于100   mm最大時(shí)59+59=118
            {
                 m4 = QString("%1").arg(mm%60).at(1);
                 m3 = QString("%1").arg(mm%60).at(0);
                 uint8_t rethh = mm/60;//轉(zhuǎn)化為小時(shí)
                  //小時(shí)計(jì)算和求值
                  if(hh >23)//半夜三更
                  {
                      h2 = QString("%1").arg(QString("%1").arg(hh%24).toInt()+rethh);
                      h1 = QString("0");
                  }
                  else if(hh == 23)//晚上:00.00
                  {
                      h1 = QString("%1").arg(QString("0").toInt()+rethh);
                      h2 = QString("0");
                  }
                  else if(hh>=10&&hh<=22)
                 {

                    QString temp  = QString("%1").arg(hh%24);//=10
                    uint8_t  ret = temp.toInt()+rethh;
                    h2 = QString("%1").arg(ret).at(1);
                     h1 = QString("%1").arg(hh%24).at(0);
                 }
                  else //<10
                  {

                      QString temp  = QString("%1").arg(hh%24);//=9
                      uint8_t  ret = temp.toInt()+rethh;
                      if(ret ==10)//10:00
                      {
                               h1 = QString("1");
                               h2 = QString("0");
                      }
                      else {
                          h1 = QString("0");
                          h2 = QString("%1").arg(ret);
                      }
                  }
            }
            else  if(mm<10 )
            {
                 m4 = QString("%1").arg(mm%60);
                 m3 = QString("%1").arg(0);
                 //小時(shí)計(jì)算和求值
                 if(hh >23)//半夜三更
                 {
                     h2 = QString("%1").arg(QString("%1").arg(hh%24).toInt());
                     h1 = QString("0");
                 }
                 else if(hh == 23)//晚上:00.00
                 {
                     h1 = QString("%1").arg(QString("0").toInt());
                     h2 = QString("0");
                 }
                 else if(hh>=10&&hh<=22)
                {

                   QString temp  = QString("%1").arg(hh%24);//=10
                   uint8_t  ret = temp.toInt();
                   h2 = QString("%1").arg(ret).at(1);
                    h1 = QString("%1").arg(hh%24).at(0);
                }
                 else //<10
                 {
                     uint8_t temp  = QString("%1").arg(hh%24).toInt();//=9
                     h1 = QString("0");
                     h2 = QString("%1").arg(temp);
                 }
            }
            else//     10<=mm>=59
             {
                     m4 = QString(QString("%1").arg(mm%60).at(1));
                     m3 = QString(QString("%1").arg(mm%60).at(0));
                     //小時(shí)計(jì)算和求值
                     if(hh >23)//半夜三更
                     {
                         h2 = QString("%1").arg(QString("%1").arg(hh%24).toInt());
                         h1 = QString("0");
                     }
                     else if(hh == 23)//晚上:00.00
                     {
                         h1 = QString("%1").arg(QString("0").toInt());
                         h2 = QString("0");
                     }
                     else if(hh>=10&&hh<=22)
                    {
                         QString temp  = QString("%1").arg(hh%24);//=10
                         uint8_t  ret = temp.toInt();
                         h2 = QString("%1").arg(ret).at(1);
                         h1 = QString("%1").arg(hh%24).at(0);
                    }
                     else //hh<10
                     {
                         uint8_t temp  = QString("%1").arg(hh%24).toInt();//=9
                         h1 = QString("0");
                         h2 = QString("%1").arg(temp);
                     }
             }
             ui->label_Rinseendime->setText(QString("%1%2%3:%4%5").arg("結(jié)束時(shí)間 ").arg(h1).arg(h2).arg(m3).arg(m4));//總治療剩余時(shí)間
             ui->label_Rinsestarttime->show();
             ui->label_Rinseendime->show();
    }
    else if(Val == "酸洗")//15-999
    {
        static uint8_t flag =0;
        if(flag == 0)//第一次進(jìn)入
        {
              Sys_time.clear();
              Sys_time = ui->label_time->text();//獲取系統(tǒng)時(shí)間
              ui->label_Rinsestarttime->setText(tr(QString("開始時(shí)間 %1:%2").arg(Sys_time.split(":").at(0)).arg(Sys_time.split(":").at(1)).toUtf8().data()));
              flag =1;
        }
//        QString stage1_time_3 = QString("%1").arg(ui->stage1_time_3->text().split(" ").at(0));//酸洗前水洗
//        QString stage2_time_3 = QString("%1").arg(ui->stage2_time_3->text().split(" ").at(0));//酸洗
//        QString stage3_time_3 = QString("%1").arg(ui->stage3_time_3->text().split(" ").at(0));//酸洗浸泡
//        QString stage4_time_3 = QString("%1").arg(ui->stage4_time_3->text().split(" ").at(0));//酸洗后水洗
        QString stage1_time_3 = QString("%1").arg(data_lib->Get_Value(72).split(" ").at(0));//酸洗前水洗15
        QString stage2_time_3 = QString("%1").arg(data_lib->Get_Value(73).split(" ").at(0));//酸洗20
        QString stage3_time_3 = QString("%1").arg(data_lib->Get_Value(74).split(" ").at(0));//酸洗浸泡60
        QString stage4_time_3 = QString("%1").arg(data_lib->Get_Value(75).split(" ").at(0));//酸洗后水洗20
        uint8_t hmus,min;
        QString stage_time;
        uint32_t  Total_time = stage1_time_3.toInt()+stage2_time_3.toInt()+stage3_time_3.toInt()+stage4_time_3.toInt();
        if(Total_time >59)
        {
                hmus = Total_time/60;//小時(shí)
                min= Total_time%60;//分
                stage_time = QString("%1:%2").arg(hmus).arg(min);
        }
        else
        {
                 stage_time = QString("0:%1").arg(Total_time);
        }
        bool ok;
        uint32_t mm,hh;
        QStringList m1; QStringList m2;
        QString m3; QString m4;  QString m5; QString m6;  QString h2; QString h1;
        m1 = stage_time.split(":");//9:59
        m2 = Sys_time.split(":");//例如:23:59
        m3 = m1.at(0);//9
        m4 = m1.at(1);//59
        m5 = m2.at(0);//23
        m6 = m2.at(1);//59
        mm =m4.toInt(&ok,10)+m6.toInt(&ok,10);//分鐘
        hh =m3.toInt(&ok,10)+m5.toInt(&ok,10);//小時(shí)
        if((mm >=60)&&(mm <100))//分鐘不能大于60   大于增加一個(gè)小時(shí)
        {
            if(mm == 60)//小時(shí)加1
            {
                m4 = QString("0");
                m3 = QString("0");
            }
            else//>60
            {
                    //小時(shí)加1  并且拼接出分鐘數(shù)值
                if(( mm>=61) &&(mm<=69))//01-09
                {
                    m4 = QString("%1").arg(mm%60).at(0);//余數(shù)時(shí)5
                    m3 = QString("0");
                }
                else
                {
                    m4 = QString("%1").arg(mm%60).at(1);
                    m3 = QString("%1").arg(mm%60).at(0);
                }

            }
            //小時(shí)計(jì)算和求值
            if(hh >23)//半夜三更
            {
                h2 = QString("%1").arg(QString("%1").arg(hh%24).toInt()+1);
                h1 = QString("0");
            }
            else if(hh == 23)//晚上:00.00
            {
                h1 = QString("%1").arg(QString("0").toInt()+1);
                h2 = QString("0");
            }
            else if(hh>=10&&hh<=22)
           {

                QString temp  = QString("%1").arg(hh%24);//19
                uint8_t  ret = temp.toInt()+1;//20  //11-23
                h2 = QString("%1").arg(ret).at(1);
                 if(ret >= 20)
                 {
                     h1 = QString("%1").arg(ret).at(0);
                 }
                 else
                 {
                     h1 = QString("%1").arg(hh%24).at(0);
                 }
           }
            else //<10
            {

                QString temp  = QString("%1").arg(hh%24);//=9
                uint8_t  ret = temp.toInt()+1;
                if(ret ==10)//10:00
                {
                         h1 = QString("1");
                         h2 = QString("0");
                }
                else {
                    h1 = QString("0");
                    h2 = QString("%1").arg(ret);
                }
            }
        }
        else if(mm >= 100)//大于等于100   mm最大時(shí)59+59=118
        {
            m4 = QString("%1").arg(mm%60).at(1);
            m3 = QString("%1").arg(mm%60).at(0);
            uint8_t rethh = mm/60;//轉(zhuǎn)化為小時(shí)
             //小時(shí)計(jì)算和求值
             if(hh >23)//半夜三更
             {
                 h2 = QString("%1").arg(QString("%1").arg(hh%24).toInt()+rethh);
                 h1 = QString("0");
             }
             else if(hh == 23)//晚上:00.00
             {
                 h1 = QString("%1").arg(QString("0").toInt()+rethh);
                 h2 = QString("0");
             }
             else if(hh>=10&&hh<=22)
            {

               QString temp  = QString("%1").arg(hh%24);//=10
               uint8_t  ret = temp.toInt()+rethh;
               h2 = QString("%1").arg(ret).at(1);
                h1 = QString("%1").arg(hh%24).at(0);
            }
             else //<10
             {

                 QString temp  = QString("%1").arg(hh%24);//=9
                 uint8_t  ret = temp.toInt()+rethh;
                 if(ret ==10)//10:00
                 {
                          h1 = QString("1");
                          h2 = QString("0");
                 }
                 else {
                     h1 = QString("0");
                     h2 = QString("%1").arg(ret);
                 }
             }
        }
       else  if(mm<10 )
        {
            m4 = QString("%1").arg(mm%60);
            m3 = QString("%1").arg(0);
            //小時(shí)計(jì)算和求值
            if(hh >23)//半夜三更
            {
                h2 = QString("%1").arg(QString("%1").arg(hh%24).toInt());
                h1 = QString("0");
            }
            else if(hh == 23)//晚上:00.00
            {
                h1 = QString("%1").arg(QString("0").toInt());
                h2 = QString("0");
            }
            else if(hh>=10&&hh<=22)
           {

              QString temp  = QString("%1").arg(hh%24);//=10
              uint8_t  ret = temp.toInt();
              h2 = QString("%1").arg(ret).at(1);
               h1 = QString("%1").arg(hh%24).at(0);
           }
            else //<10
            {
                uint8_t temp  = QString("%1").arg(hh%24).toInt();//=9
                h1 = QString("0");
                h2 = QString("%1").arg(temp);
            }
        }
        else//     10<=mm>=59
        {
                m4 = QString(QString("%1").arg(mm%60).at(1));
                m3 = QString(QString("%1").arg(mm%60).at(0));
                //小時(shí)計(jì)算和求值
                if(hh >23)//半夜三更
                {
                    h2 = QString("%1").arg(QString("%1").arg(hh%24).toInt());
                    h1 = QString("0");
                }
                else if(hh == 23)//晚上:00.00
                {
                    h1 = QString("%1").arg(QString("0").toInt());
                    h2 = QString("0");
                }
                else if(hh>=10&&hh<=22)
               {
                    QString temp  = QString("%1").arg(hh%24);//=10
                    uint8_t  ret = temp.toInt();
                    h2 = QString("%1").arg(ret).at(1);
                    h1 = QString("%1").arg(hh%24).at(0);
               }
                else //<10
                {
                    uint8_t temp  = QString("%1").arg(hh%24).toInt();//=9
                    h1 = QString("0");
                    h2 = QString("%1").arg(temp);
                }
        }
            ui->label_Rinseendime->setText(QString("%1%2%3:%4%5").arg("結(jié)束時(shí)間 ").arg(h1).arg(h2).arg(m3).arg(m4));//總治療剩余時(shí)間
            ui->label_Rinsestarttime->show();
            ui->label_Rinseendime->show();
    }
    else if(Val == "過氧乙酸清洗")
    {
        static uint8_t flag =0;
        if(flag == 0)//第一次進(jìn)入
        {
             Sys_time.clear();
              Sys_time = ui->label_time->text();//獲取系統(tǒng)時(shí)間
              ui->label_Rinsestarttime->setText(tr(QString("開始時(shí)間 %1:%2").arg(Sys_time.split(":").at(0)).arg(Sys_time.split(":").at(1)).toUtf8().data()));
              flag =1;
        }
//        QString stage1_time_2 = QString("%1").arg(ui->stage1_time_1->text().split(" ").at(0));//清洗前水洗
//        QString stage2_time_2 = QString("%1").arg(ui->stage2_time_2->text().split(" ").at(0));//過氧乙酸清洗
//        QString stage3_time_2 = QString("%1").arg(ui->stage3_time_2->text().split(" ").at(0));//過氧乙酸浸泡
//        QString stage4_time_2 = QString("%1").arg(ui->stage4_time_2->text().split(" ").at(0));//清洗后水洗
        QString stage1_time_2 = QString("%1").arg(data_lib->Get_Value(92).split(" ").at(0));//清洗前水洗
        QString stage2_time_2 = QString("%1").arg(data_lib->Get_Value(93).split(" ").at(0));//過氧乙酸清洗
        QString stage3_time_2 = QString("%1").arg(data_lib->Get_Value(94).split(" ").at(0));//過氧乙酸浸泡
        QString stage4_time_2 = QString("%1").arg(data_lib->Get_Value(95).split(" ").at(0));//清洗后水洗
        uint8_t hmus,min;
        QString stage_time;
        uint32_t  Total_time = stage1_time_2.toInt()+stage2_time_2.toInt()+stage3_time_2.toInt()+stage4_time_2.toInt();
        if(Total_time >59)
        {
                hmus = Total_time/60;//小時(shí)
                min= Total_time%60;//分
                stage_time = QString("%1:%2").arg(hmus).arg(min);
        }
        else
        {
                 stage_time = QString("0:%1").arg(Total_time);
        }
        bool ok;
        uint32_t mm,hh;
        QStringList m1; QStringList m2;
        QString m3; QString m4;  QString m5; QString m6;  QString h2; QString h1;
        m1 = stage_time.split(":");//9:59
        m2 = Sys_time.split(":");//例如:23:59
        m3 = m1.at(0);//9
        m4 = m1.at(1);//59
        m5 = m2.at(0);//23
        m6 = m2.at(1);//59
        mm =m4.toInt(&ok,10)+m6.toInt(&ok,10);//分鐘
        hh =m3.toInt(&ok,10)+m5.toInt(&ok,10);//小時(shí)
        qDebug()<<m3<<m4<<"\n"<<m5<<m6<<"\n"<<hh<<mm<<endl;
        if((mm >=60)&&(mm <100))//分鐘不能大于60   大于增加一個(gè)小時(shí)
        {
            if(mm == 60)//小時(shí)加1
            {
                m4 = QString("0");
                m3 = QString("0");
            }
            else//>60
            {
                    //小時(shí)加1  并且拼接出分鐘數(shù)值
                if(( mm>=61) &&(mm<=69))//01-09
                {
                    m4 = QString("%1").arg(mm%60).at(0);//余數(shù)時(shí)5
                    m3 = QString("0");
                }
                else
                {
                    m4 = QString("%1").arg(mm%60).at(1);
                    m3 = QString("%1").arg(mm%60).at(0);
                }
            }
            //小時(shí)計(jì)算和求值
            if(hh >23)//半夜三更
            {
                h2 = QString("%1").arg(QString("%1").arg(hh%24).toInt()+1);
                h1 = QString("0");
            }
            else if(hh == 23)//晚上:00.00
            {
                h1 = QString("%1").arg(QString("0").toInt()+1);
                h2 = QString("0");
            }
            else if(hh>=10&&hh<=22)
           {

                QString temp  = QString("%1").arg(hh%24);//19
                uint8_t  ret = temp.toInt()+1;//20  //11-23
                h2 = QString("%1").arg(ret).at(1);
                 if(ret >= 20)
                 {
                     h1 = QString("%1").arg(ret).at(0);
                 }
                 else
                 {
                     h1 = QString("%1").arg(hh%24).at(0);
                 }
           }
            else //<10
            {

                QString temp  = QString("%1").arg(hh%24);//=9
                uint8_t  ret = temp.toInt()+1;
                if(ret ==10)//10:00
                {
                         h1 = QString("1");
                         h2 = QString("0");
                }
                else {
                    h1 = QString("0");
                    h2 = QString("%1").arg(ret);
                }
            }
        }
        else if(mm >= 100)//大于等于100   mm最大時(shí)59+59=118
        {
            m4 = QString("%1").arg(mm%60).at(1);
            m3 = QString("%1").arg(mm%60).at(0);
            uint8_t rethh = mm/60;//轉(zhuǎn)化為小時(shí)
             //小時(shí)計(jì)算和求值
             if(hh >23)//半夜三更
             {
                 h2 = QString("%1").arg(QString("%1").arg(hh%24).toInt()+rethh);
                 h1 = QString("0");
             }
             else if(hh == 23)//晚上:00.00
             {
                 h1 = QString("%1").arg(QString("0").toInt()+rethh);
                 h2 = QString("0");
             }
             else if(hh>=10&&hh<=22)
            {

               QString temp  = QString("%1").arg(hh%24);//=10
               uint8_t  ret = temp.toInt()+rethh;
               h2 = QString("%1").arg(ret).at(1);
                h1 = QString("%1").arg(hh%24).at(0);
            }
             else //<10
             {

                 QString temp  = QString("%1").arg(hh%24);//=9
                 uint8_t  ret = temp.toInt()+rethh;
                 if(ret ==10)//10:00
                 {
                          h1 = QString("1");
                          h2 = QString("0");
                 }
                 else {
                     h1 = QString("0");
                     h2 = QString("%1").arg(ret);
                 }
             }
        }
       else  if(mm<10 )
        {
            m4 = QString("%1").arg(mm%60);
            m3 = QString("%1").arg(0);
            //小時(shí)計(jì)算和求值
            if(hh >23)//半夜三更
            {
                h2 = QString("%1").arg(QString("%1").arg(hh%24).toInt());
                h1 = QString("0");
            }
            else if(hh == 23)//晚上:00.00
            {
                h1 = QString("%1").arg(QString("0").toInt());
                h2 = QString("0");
            }
            else if(hh>=10&&hh<=22)
           {

              QString temp  = QString("%1").arg(hh%24);//=10
              uint8_t  ret = temp.toInt();
              h2 = QString("%1").arg(ret).at(1);
               h1 = QString("%1").arg(hh%24).at(0);
           }
            else //<10
            {
                uint8_t temp  = QString("%1").arg(hh%24).toInt();//=9
                h1 = QString("0");
                h2 = QString("%1").arg(temp);
            }
        }
        else//     10<=mm>=59
        {
                m4 = QString(QString("%1").arg(mm%60).at(1));
                m3 = QString(QString("%1").arg(mm%60).at(0));
                //小時(shí)計(jì)算和求值
                if(hh >23)//半夜三更
                {
                    h2 = QString("%1").arg(QString("%1").arg(hh%24).toInt());
                    h1 = QString("0");
                }
                else if(hh == 23)//晚上:00.00
                {
                    h1 = QString("%1").arg(QString("0").toInt());
                    h2 = QString("0");
                }
                else if(hh>=10&&hh<=22)
               {
                    QString temp  = QString("%1").arg(hh%24);//=10
                    uint8_t  ret = temp.toInt();
                    h2 = QString("%1").arg(ret).at(1);
                    h1 = QString("%1").arg(hh%24).at(0);
               }
                else //<10
                {
                    uint8_t temp  = QString("%1").arg(hh%24).toInt();//=9
                    h1 = QString("0");
                    h2 = QString("%1").arg(temp);
                }
        }
            ui->label_Rinseendime->setText(QString("%1%2%3:%4%5").arg("結(jié)束時(shí)間 ").arg(h1).arg(h2).arg(m3).arg(m4));//總治療剩余時(shí)間
            ui->label_Rinsestarttime->show();
            ui->label_Rinseendime->show();
    }
    else if(Val == "消毒")
    {

        static uint8_t flag =0;
        if(flag == 0)//第一次進(jìn)入
        {
              Sys_time.clear();
              Sys_time = ui->label_time->text();//獲取系統(tǒng)時(shí)間
              ui->label_Rinsestarttime->setText(tr(QString("開始時(shí)間 %1:%2").arg(Sys_time.split(":").at(0)).arg(Sys_time.split(":").at(1)).toUtf8().data()));
              flag =1;
        }
//        QString stage1_time_4 = QString("%1").arg(ui->stage1_time_4->text().split(" ").at(0));//消毒前水洗
//        QString stage2_time_4 = QString("%1").arg(ui->stage2_time_4->text().split(" ").at(0));//消毒
//        QString stage3_time_4 = QString("%1").arg(ui->stage3_time_4->text().split(" ").at(0));//消毒靜置
//        QString stage4_time_4 = QString("%1").arg(ui->stage4_time_4->text().split(" ").at(0));//消毒后水洗
        QString stage1_time_4 = QString("%1").arg(data_lib->Get_Value(77).split(" ").at(0));//消毒前水洗
        QString stage2_time_4 = QString("%1").arg(data_lib->Get_Value(78).split(" ").at(0));//消毒
        QString stage3_time_4 = QString("%1").arg(data_lib->Get_Value(79).split(" ").at(0));//消毒靜置
        QString stage4_time_4 = QString("%1").arg(data_lib->Get_Value(80).split(" ").at(0));//消毒后水洗
        uint8_t hmus,min;
        QString stage_time;
        uint32_t  Total_time = stage1_time_4.toInt()+stage2_time_4.toInt()+stage3_time_4.toInt()+stage4_time_4.toInt();
        if(Total_time >59)
        {
                hmus = Total_time/60;//小時(shí)
                min= Total_time%60;//分
                stage_time = QString("%1:%2").arg(hmus).arg(min);
        }
        else
        {
                 stage_time = QString("0:%1").arg(Total_time);
        }
        bool ok;
        uint32_t mm,hh;
        QStringList m1; QStringList m2;
        QString m3; QString m4;  QString m5; QString m6;  QString h2; QString h1;
        m1 = stage_time.split(":");//9:59
        m2 = Sys_time.split(":");//例如:23:59
        m3 = m1.at(0);//9
        m4 = m1.at(1);//59
        m5 = m2.at(0);//23
        m6 = m2.at(1);//59
        mm =m4.toInt(&ok,10)+m6.toInt(&ok,10);//分鐘
        hh =m3.toInt(&ok,10)+m5.toInt(&ok,10);//小時(shí)
        qDebug()<<m3<<m4<<"\n"<<m5<<m6<<"\n"<<hh<<mm<<endl;
        if((mm >=60)&&(mm <100))//分鐘不能大于60   大于增加一個(gè)小時(shí)
        {
            if(mm == 60)//小時(shí)加1
            {
                m4 = QString("0");
                m3 = QString("0");
            }
            else//>60
            {
                    //小時(shí)加1  并且拼接出分鐘數(shù)值
                if(( mm>=61) &&(mm<=69))//01-09
                {
                    m4 = QString("%1").arg(mm%60).at(0);//余數(shù)時(shí)5
                    m3 = QString("0");
                }
                else
                {
                    m4 = QString("%1").arg(mm%60).at(1);
                    m3 = QString("%1").arg(mm%60).at(0);
                }
            }
            //小時(shí)計(jì)算和求值
            if(hh >23)//半夜三更
            {
                h2 = QString("%1").arg(QString("%1").arg(hh%24).toInt()+1);
                h1 = QString("0");
            }
            else if(hh == 23)//晚上:00.00
            {
                h1 = QString("%1").arg(QString("0").toInt()+1);
                h2 = QString("0");
            }
            else if(hh>=10&&hh<=22)
           {

                QString temp  = QString("%1").arg(hh%24);//19
                uint8_t  ret = temp.toInt()+1;//20  //11-23
                h2 = QString("%1").arg(ret).at(1);
                 if(ret >= 20)
                 {
                     h1 = QString("%1").arg(ret).at(0);
                 }
                 else
                 {
                     h1 = QString("%1").arg(hh%24).at(0);
                 }
           }
            else //<10
            {

                QString temp  = QString("%1").arg(hh%24);//=9
                uint8_t  ret = temp.toInt()+1;
                if(ret ==10)//10:00
                {
                         h1 = QString("1");
                         h2 = QString("0");
                }
                else {
                    h1 = QString("0");
                    h2 = QString("%1").arg(ret);
                }
            }
        }
        else if(mm >= 100)//大于等于100   mm最大時(shí)59+59=118
        {
            m4 = QString("%1").arg(mm%60).at(1);
            m3 = QString("%1").arg(mm%60).at(0);
            uint8_t rethh = mm/60;//轉(zhuǎn)化為小時(shí)
             //小時(shí)計(jì)算和求值
             if(hh >23)//半夜三更
             {
                 h2 = QString("%1").arg(QString("%1").arg(hh%24).toInt()+rethh);
                 h1 = QString("0");
             }
             else if(hh == 23)//晚上:00.00
             {
                 h1 = QString("%1").arg(QString("0").toInt()+rethh);
                 h2 = QString("0");
             }
             else if(hh>=10&&hh<=22)
            {

               QString temp  = QString("%1").arg(hh%24);//=10
               uint8_t  ret = temp.toInt()+rethh;
               h2 = QString("%1").arg(ret).at(1);
                h1 = QString("%1").arg(hh%24).at(0);
            }
             else //<10
             {

                 QString temp  = QString("%1").arg(hh%24);//=9
                 uint8_t  ret = temp.toInt()+rethh;
                 if(ret ==10)//10:00
                 {
                          h1 = QString("1");
                          h2 = QString("0");
                 }
                 else {
                     h1 = QString("0");
                     h2 = QString("%1").arg(ret);
                 }
             }
        }
       else  if(mm<10 )
        {
            m4 = QString("%1").arg(mm%60);
            m3 = QString("%1").arg(0);
            //小時(shí)計(jì)算和求值
            if(hh >23)//半夜三更
            {
                h2 = QString("%1").arg(QString("%1").arg(hh%24).toInt());
                h1 = QString("0");
            }
            else if(hh == 23)//晚上:00.00
            {
                h1 = QString("%1").arg(QString("0").toInt());
                h2 = QString("0");
            }
            else if(hh>=10&&hh<=22)
           {

              QString temp  = QString("%1").arg(hh%24);//=10
              uint8_t  ret = temp.toInt();
              h2 = QString("%1").arg(ret).at(1);
               h1 = QString("%1").arg(hh%24).at(0);
           }
            else //<10
            {
                uint8_t temp  = QString("%1").arg(hh%24).toInt();//=9
                h1 = QString("0");
                h2 = QString("%1").arg(temp);
            }
        }
        else//     10<=mm>=59
        {
                m4 = QString(QString("%1").arg(mm%60).at(1));
                m3 = QString(QString("%1").arg(mm%60).at(0));
                //小時(shí)計(jì)算和求值
                if(hh >23)//半夜三更
                {
                    h2 = QString("%1").arg(QString("%1").arg(hh%24).toInt());
                    h1 = QString("0");
                }
                else if(hh == 23)//晚上:00.00
                {
                    h1 = QString("%1").arg(QString("0").toInt());
                    h2 = QString("0");
                }
                else if(hh>=10&&hh<=22)
               {
                    QString temp  = QString("%1").arg(hh%24);//=10
                    uint8_t  ret = temp.toInt();
                    h2 = QString("%1").arg(ret).at(1);
                    h1 = QString("%1").arg(hh%24).at(0);
               }
                else //<10
                {
                    uint8_t temp  = QString("%1").arg(hh%24).toInt();//=9
                    h1 = QString("0");
                    h2 = QString("%1").arg(temp);
                }
        }
            ui->label_Rinseendime->setText(QString("%1%2%3:%4%5").arg("結(jié)束時(shí)間 ").arg(h1).arg(h2).arg(m3).arg(m4));//總治療剩余時(shí)間
            ui->label_Rinsestarttime->show();
            ui->label_Rinseendime->show();
    }
    else if(Val == "熱水沖洗")
    {
        static uint8_t flag =0;
        if(flag == 0)//第一次進(jìn)入
        {
              Sys_time.clear();
              Sys_time = ui->label_time->text();//獲取系統(tǒng)時(shí)間
              ui->label_Rinsestarttime->setText(tr(QString("開始時(shí)間 %1:%2").arg(Sys_time.split(":").at(0)).arg(Sys_time.split(":").at(1)).toUtf8().data()));
              flag =1;
        }
//        QString stage1_time_5 = QString("%1").arg(ui->stage1_time_5->text().split(" ").at(0));//熱沖洗前水洗
//        QString stage2_time_5 = QString("%1").arg(5);//加熱
//        QString stage3_time_5 = QString("%1").arg(ui->stage3_time_5->text().split(" ").at(0));//熱水沖洗
//        QString stage4_time_5 = QString("%1").arg(5);//冷卻
//        QString stage5_time_5 = QString("%1").arg(ui->stage5_time_5->text().split(" ").at(0));//熱沖洗后水洗
        QString stage1_time_5 = QString("%1").arg(data_lib->Get_Value(83).split(" ").at(0));//熱沖洗前水洗
        QString stage2_time_5 = QString("%1").arg(5);//加熱
        QString stage3_time_5 = QString("%1").arg(data_lib->Get_Value(84).split(" ").at(0));//熱水沖洗
        QString stage4_time_5 = QString("%1").arg(5);//冷卻
        QString stage5_time_5 = QString("%1").arg(data_lib->Get_Value(85).split(" ").at(0));//熱沖洗后水洗
        uint8_t hmus,min;
        QString stage_time;
        uint32_t  Total_time = stage1_time_5.toInt()+stage2_time_5.toInt()+stage3_time_5.toInt()+stage5_time_5.toInt()+stage4_time_5.toInt();
        if(Total_time >59)
        {
                hmus = Total_time/60;//小時(shí)
                min= Total_time%60;//分
                stage_time = QString("%1:%2").arg(hmus).arg(min);
        }
        else
        {
                 stage_time = QString("0:%1").arg(Total_time);
        }
        bool ok;
        uint32_t mm,hh;
        QStringList m1; QStringList m2;
        QString m3; QString m4;  QString m5; QString m6;  QString h2; QString h1;
        m1 = stage_time.split(":");//9:59
        m2 = Sys_time.split(":");//例如:23:59
        m3 = m1.at(0);//9
        m4 = m1.at(1);//59
        m5 = m2.at(0);//23
        m6 = m2.at(1);//59
        mm =m4.toInt(&ok,10)+m6.toInt(&ok,10);//分鐘
        hh =m3.toInt(&ok,10)+m5.toInt(&ok,10);//小時(shí)
        qDebug()<<m3<<m4<<"\n"<<m5<<m6<<"\n"<<hh<<mm<<endl;
        if((mm >=60)&&(mm <100))//分鐘不能大于60   大于增加一個(gè)小時(shí)
        {
            if(mm == 60)//小時(shí)加1
            {
                m4 = QString("0");
                m3 = QString("0");
            }
            else//>60
            {
                    //小時(shí)加1  并且拼接出分鐘數(shù)值
                if(( mm>=61) &&(mm<=69))//01-09
                {
                    m4 = QString("%1").arg(mm%60).at(0);//余數(shù)時(shí)5
                    m3 = QString("0");
                }
                else
                {
                    m4 = QString("%1").arg(mm%60).at(1);
                    m3 = QString("%1").arg(mm%60).at(0);
                }
            }
            //小時(shí)計(jì)算和求值
            if(hh >23)//半夜三更
            {
                h2 = QString("%1").arg(QString("%1").arg(hh%24).toInt()+1);
                h1 = QString("0");
            }
            else if(hh == 23)//晚上:00.00
            {
                h1 = QString("%1").arg(QString("0").toInt()+1);
                h2 = QString("0");
            }
            else if(hh>=10&&hh<=22)
           {

                QString temp  = QString("%1").arg(hh%24);//19
                uint8_t  ret = temp.toInt()+1;//20  //11-23
                h2 = QString("%1").arg(ret).at(1);
                 if(ret >= 20)
                 {
                     h1 = QString("%1").arg(ret).at(0);
                 }
                 else
                 {
                     h1 = QString("%1").arg(hh%24).at(0);
                 }
           }
            else //<10
            {

                QString temp  = QString("%1").arg(hh%24);//=9
                uint8_t  ret = temp.toInt()+1;
                if(ret ==10)//10:00
                {
                         h1 = QString("1");
                         h2 = QString("0");
                }
                else {
                    h1 = QString("0");
                    h2 = QString("%1").arg(ret);
                }
            }
        }
        else if(mm >= 100)//大于等于100   mm最大時(shí)59+59=118
        {
            m4 = QString("%1").arg(mm%60).at(1);
            m3 = QString("%1").arg(mm%60).at(0);
            uint8_t rethh = mm/60;//轉(zhuǎn)化為小時(shí)
             //小時(shí)計(jì)算和求值
             if(hh >23)//半夜三更
             {
                 h2 = QString("%1").arg(QString("%1").arg(hh%24).toInt()+rethh);
                 h1 = QString("0");
             }
             else if(hh == 23)//晚上:00.00
             {
                 h1 = QString("%1").arg(QString("0").toInt()+rethh);
                 h2 = QString("0");
             }
             else if(hh>=10&&hh<=22)
            {

               QString temp  = QString("%1").arg(hh%24);//=10
               uint8_t  ret = temp.toInt()+rethh;
               h2 = QString("%1").arg(ret).at(1);
                h1 = QString("%1").arg(hh%24).at(0);
            }
             else //<10
             {

                 QString temp  = QString("%1").arg(hh%24);//=9
                 uint8_t  ret = temp.toInt()+rethh;
                 if(ret ==10)//10:00
                 {
                          h1 = QString("1");
                          h2 = QString("0");
                 }
                 else {
                     h1 = QString("0");
                     h2 = QString("%1").arg(ret);
                 }
             }
        }
       else  if(mm<10 )
        {
            m4 = QString("%1").arg(mm%60);
            m3 = QString("%1").arg(0);
            //小時(shí)計(jì)算和求值
            if(hh >23)//半夜三更
            {
                h2 = QString("%1").arg(QString("%1").arg(hh%24).toInt());
                h1 = QString("0");
            }
            else if(hh == 23)//晚上:00.00
            {
                h1 = QString("%1").arg(QString("0").toInt());
                h2 = QString("0");
            }
            else if(hh>=10&&hh<=22)
           {

              QString temp  = QString("%1").arg(hh%24);//=10
              uint8_t  ret = temp.toInt();
              h2 = QString("%1").arg(ret).at(1);
               h1 = QString("%1").arg(hh%24).at(0);
           }
            else //<10
            {
                uint8_t temp  = QString("%1").arg(hh%24).toInt();//=9
                h1 = QString("0");
                h2 = QString("%1").arg(temp);
            }
        }
        else//     10<=mm>=59
        {
                m4 = QString(QString("%1").arg(mm%60).at(1));
                m3 = QString(QString("%1").arg(mm%60).at(0));
                //小時(shí)計(jì)算和求值
                if(hh >23)//半夜三更
                {
                    h2 = QString("%1").arg(QString("%1").arg(hh%24).toInt());
                    h1 = QString("0");
                }
                else if(hh == 23)//晚上:00.00
                {
                    h1 = QString("%1").arg(QString("0").toInt());
                    h2 = QString("0");
                }
                else if(hh>=10&&hh<=22)
               {
                    QString temp  = QString("%1").arg(hh%24);//=10
                    uint8_t  ret = temp.toInt();
                    h2 = QString("%1").arg(ret).at(1);
                    h1 = QString("%1").arg(hh%24).at(0);
               }
                else //<10
                {
                    uint8_t temp  = QString("%1").arg(hh%24).toInt();//=9
                    h1 = QString("0");
                    h2 = QString("%1").arg(temp);
                }
        }
            ui->label_Rinseendime->setText(QString("%1%2%3:%4%5").arg("結(jié)束時(shí)間 ").arg(h1).arg(h2).arg(m3).arg(m4));//總治療剩余時(shí)間
            ui->label_Rinsestarttime->show();
            ui->label_Rinseendime->show();
    }
    else if(Val == "熱水檸檬酸洗")
    {
        static uint8_t flag =0;
        if(flag == 0)//第一次進(jìn)入
        {
              Sys_time.clear();
              Sys_time = ui->label_time->text();//獲取系統(tǒng)時(shí)間
              ui->label_Rinsestarttime->setText(tr(QString("開始時(shí)間 %1:%2").arg(Sys_time.split(":").at(0)).arg(Sys_time.split(":").at(1)).toUtf8().data()));
              flag =1;
        }
//        QString stage1_time_6 = QString("%1").arg(ui->stage1_time_6->text().split(" ").at(0));//清洗前水洗
//        QString stage2_time_6 = QString("%1").arg(5);//加熱
//        QString stage3_time_6 = QString("%1").arg(ui->stage3_time_6->text().split(" ").at(0));//熱水檸檬酸洗
//        QString stage4_time_6 = QString("%1").arg(5);//冷卻
//        QString stage5_time_6 = QString("%1").arg(ui->stage5_time_6->text().split(" ").at(0));//熱沖洗后水洗
        QString stage1_time_6 = QString("%1").arg(data_lib->Get_Value(87).split(" ").at(0));//清洗前水洗
        QString stage2_time_6 = QString("%1").arg(5);//加熱
        QString stage3_time_6 = QString("%1").arg(data_lib->Get_Value(88).split(" ").at(0));//熱水檸檬酸洗
        QString stage4_time_6 = QString("%1").arg(5);//冷卻
        QString stage5_time_6 = QString("%1").arg(data_lib->Get_Value(89).split(" ").at(0));//熱沖洗后水洗
        uint8_t hmus,min;
        QString stage_time;
        uint32_t  Total_time = stage1_time_6.toInt()+stage2_time_6.toInt()+stage3_time_6.toInt()+stage5_time_6.toInt()+stage4_time_6.toInt();
        if(Total_time >59)
        {
                hmus = Total_time/60;//小時(shí)
                min= Total_time%60;//分
                stage_time = QString("%1:%2").arg(hmus).arg(min);
        }
        else
        {
                 stage_time = QString("0:%1").arg(Total_time);
        }
        bool ok;
        uint32_t mm,hh;
        QStringList m1; QStringList m2;
        QString m3; QString m4;  QString m5; QString m6;  QString h2; QString h1;
        m1 = stage_time.split(":");//9:59
        m2 = Sys_time.split(":");//例如:23:59
        m3 = m1.at(0);//9
        m4 = m1.at(1);//59
        m5 = m2.at(0);//23
        m6 = m2.at(1);//59
        mm =m4.toInt(&ok,10)+m6.toInt(&ok,10);//分鐘
        hh =m3.toInt(&ok,10)+m5.toInt(&ok,10);//小時(shí)
        qDebug()<<m3<<m4<<"\n"<<m5<<m6<<"\n"<<hh<<mm<<endl;
        if((mm >=60)&&(mm <100))//分鐘不能大于60   大于增加一個(gè)小時(shí)
        {
            if(mm == 60)//小時(shí)加1
            {
                m4 = QString("0");
                m3 = QString("0");
            }
            else//>60
            {
                    //小時(shí)加1  并且拼接出分鐘數(shù)值
                if(( mm>=61) &&(mm<=69))//01-09
                {
                    m4 = QString("%1").arg(mm%60).at(0);//余數(shù)時(shí)5
                    m3 = QString("0");
                }
                else
                {
                    m4 = QString("%1").arg(mm%60).at(1);
                    m3 = QString("%1").arg(mm%60).at(0);
                }
            }
            //小時(shí)計(jì)算和求值
            if(hh >23)//半夜三更
            {
                h2 = QString("%1").arg(QString("%1").arg(hh%24).toInt()+1);
                h1 = QString("0");
            }
            else if(hh == 23)//晚上:00.00
            {
                h1 = QString("%1").arg(QString("0").toInt()+1);
                h2 = QString("0");
            }
            else if(hh>=10&&hh<=22)
           {

                QString temp  = QString("%1").arg(hh%24);//19
                uint8_t  ret = temp.toInt()+1;//20  //11-23
                h2 = QString("%1").arg(ret).at(1);
                 if(ret >= 20)
                 {
                     h1 = QString("%1").arg(ret).at(0);
                 }
                 else
                 {
                     h1 = QString("%1").arg(hh%24).at(0);
                 }
           }
            else //<10
            {

                QString temp  = QString("%1").arg(hh%24);//=9
                uint8_t  ret = temp.toInt()+1;
                if(ret ==10)//10:00
                {
                         h1 = QString("1");
                         h2 = QString("0");
                }
                else {
                    h1 = QString("0");
                    h2 = QString("%1").arg(ret);
                }
            }
        }
        else if(mm >= 100)//大于等于100   mm最大時(shí)59+59=118
        {
            m4 = QString("%1").arg(mm%60).at(1);
            m3 = QString("%1").arg(mm%60).at(0);
            uint8_t rethh = mm/60;//轉(zhuǎn)化為小時(shí)
             //小時(shí)計(jì)算和求值
             if(hh >23)//半夜三更
             {
                 h2 = QString("%1").arg(QString("%1").arg(hh%24).toInt()+rethh);
                 h1 = QString("0");
             }
             else if(hh == 23)//晚上:00.00
             {
                 h1 = QString("%1").arg(QString("0").toInt()+rethh);
                 h2 = QString("0");
             }
             else if(hh>=10&&hh<=22)
            {

               QString temp  = QString("%1").arg(hh%24);//=10
               uint8_t  ret = temp.toInt()+rethh;
               h2 = QString("%1").arg(ret).at(1);
                h1 = QString("%1").arg(hh%24).at(0);
            }
             else //<10
             {

                 QString temp  = QString("%1").arg(hh%24);//=9
                 uint8_t  ret = temp.toInt()+rethh;
                 if(ret ==10)//10:00
                 {
                          h1 = QString("1");
                          h2 = QString("0");
                 }
                 else {
                     h1 = QString("0");
                     h2 = QString("%1").arg(ret);
                 }
             }
        }
       else  if(mm<10 )
        {
            m4 = QString("%1").arg(mm%60);
            m3 = QString("%1").arg(0);
            //小時(shí)計(jì)算和求值
            if(hh >23)//半夜三更
            {
                h2 = QString("%1").arg(QString("%1").arg(hh%24).toInt());
                h1 = QString("0");
            }
            else if(hh == 23)//晚上:00.00
            {
                h1 = QString("%1").arg(QString("0").toInt());
                h2 = QString("0");
            }
            else if(hh>=10&&hh<=22)
           {

              QString temp  = QString("%1").arg(hh%24);//=10
              uint8_t  ret = temp.toInt();
              h2 = QString("%1").arg(ret).at(1);
               h1 = QString("%1").arg(hh%24).at(0);
           }
            else //<10
            {
                uint8_t temp  = QString("%1").arg(hh%24).toInt();//=9
                h1 = QString("0");
                h2 = QString("%1").arg(temp);
            }
        }
        else//     10<=mm>=59
        {
                m4 = QString(QString("%1").arg(mm%60).at(1));
                m3 = QString(QString("%1").arg(mm%60).at(0));
                //小時(shí)計(jì)算和求值
                if(hh >23)//半夜三更
                {
                    h2 = QString("%1").arg(QString("%1").arg(hh%24).toInt());
                    h1 = QString("0");
                }
                else if(hh == 23)//晚上:00.00
                {
                    h1 = QString("%1").arg(QString("0").toInt());
                    h2 = QString("0");
                }
                else if(hh>=10&&hh<=22)
               {
                    QString temp  = QString("%1").arg(hh%24);//=10
                    uint8_t  ret = temp.toInt();
                    h2 = QString("%1").arg(ret).at(1);
                    h1 = QString("%1").arg(hh%24).at(0);
               }
                else //<10
                {
                    uint8_t temp  = QString("%1").arg(hh%24).toInt();//=9
                    h1 = QString("0");
                    h2 = QString("%1").arg(temp);
                }
        }
            ui->label_Rinseendime->setText(QString("%1%2%3:%4%5").arg("結(jié)束時(shí)間 ").arg(h1).arg(h2).arg(m3).arg(m4));//總治療剩余時(shí)間
            ui->label_Rinsestarttime->show();
            ui->label_Rinseendime->show();
    }
    else if(Val == "強(qiáng)制沖洗")
    {
        static uint8_t flag =0;
        if(flag == 0)//第一次進(jìn)入
        {
              Sys_time.clear();
              MandatoryRinse.clear();
              Sys_time = ui->label_time->text();//獲取系統(tǒng)時(shí)間
              ui->label_Rinsestarttime->setText(tr(QString("開始時(shí)間 %1:%2").arg(Sys_time.split(":").at(0)).arg(Sys_time.split(":").at(1)).toUtf8().data()));
              MandatoryRinse = QString("0:%1").arg(ui->label_rinseleft->text().split(" ").at(0));//強(qiáng)制沖洗分鐘
              flag =1;//一直保留這個(gè)值
        }
        //QString Water_time = QString("%1").arg(data_lib->Get_Value(71));//水洗時(shí)間分鐘
        uint32_t hmus,min;
        uint32_t Total_time=MandatoryRinse.toInt();
        if(Total_time >59)
        {
                MandatoryRinse.clear();
                hmus = Total_time/60;//小時(shí)
                min= Total_time%60;//分
                MandatoryRinse = QString("%1:%2").arg(hmus).arg(min);
        }
        else
        {
                 MandatoryRinse.clear();
                 MandatoryRinse = QString("0:%1").arg(Total_time);
        }
         bool ok;
         uint32_t mm,hh;
         QStringList m1; QStringList m2;
         QString m3; QString m4;  QString m5; QString m6;  QString h2; QString h1;
         m1 = MandatoryRinse.split(":");//9:59
         m2 = Sys_time.split(":");//例如:23:59
         m3 = m1.at(0);//9
         m4 = m1.at(1);//59
         m5 = m2.at(0);//23
         m6 = m2.at(1);//59
         mm =m4.toInt(&ok,10)+m6.toInt(&ok,10);//分鐘
         hh =m3.toInt(&ok,10)+m5.toInt(&ok,10);//小時(shí)
         qDebug()<<m3<<m4<<"\n"<<m5<<m6<<"\n"<<hh<<mm<<endl;
        if((mm >=60)&&(mm <100))//分鐘不能大于60   大于增加一個(gè)小時(shí)
        {
             if(mm == 60)//小時(shí)加1
             {
                 m4 = QString("0");
                 m3 = QString("0");
             }
             else//>60
             {
                     //小時(shí)加1  并且拼接出分鐘數(shù)值
                 if(( mm>=61) &&(mm<=69))//01-09
                 {
                     m4 = QString("%1").arg(mm%60).at(0);//余數(shù)時(shí)5
                     m3 = QString("0");
                 }
                 else
                 {
                     m4 = QString("%1").arg(mm%60).at(1);
                     m3 = QString("%1").arg(mm%60).at(0);
                 }
             }
             //小時(shí)計(jì)算和求值
             if(hh >23)//半夜三更
             {
                 h2 = QString("%1").arg(QString("%1").arg(hh%24).toInt()+1);
                 h1 = QString("0");
             }
             else if(hh == 23)//晚上:00.00
             {
                 h1 = QString("%1").arg(QString("0").toInt()+1);
                 h2 = QString("0");
             }
             else if(hh>=10&&hh<=22)
            {
               QString temp  = QString("%1").arg(hh%24);//19
               uint8_t  ret = temp.toInt()+1;//20  //11-23
               h2 = QString("%1").arg(ret).at(1);
                if(ret >= 20)
                {
                    h1 = QString("%1").arg(ret).at(0);
                }
                else
                {
                    h1 = QString("%1").arg(hh%24).at(0);
                }
            }
             else //<10
         {

             QString temp  = QString("%1").arg(hh%24);//=9
             uint8_t  ret = temp.toInt()+1;
             if(ret ==10)//10:00
             {
                      h1 = QString("1");
                      h2 = QString("0");
             }
             else {
                 h1 = QString("0");
                 h2 = QString("%1").arg(ret);
             }
         }
        }
        else if(mm >= 100)//大于等于100   mm最大時(shí)59+59=118
        {
             m4 = QString("%1").arg(mm%60).at(1);
             m3 = QString("%1").arg(mm%60).at(0);
             uint8_t rethh = mm/60;//轉(zhuǎn)化為小時(shí)
              //小時(shí)計(jì)算和求值
              if(hh >23)//半夜三更
              {
                  h2 = QString("%1").arg(QString("%1").arg(hh%24).toInt()+rethh);
                  h1 = QString("0");
              }
              else if(hh == 23)//晚上:00.00
              {
                  h1 = QString("%1").arg(QString("0").toInt()+rethh);
                  h2 = QString("0");
              }
              else if(hh>=10&&hh<=22)
             {

                QString temp  = QString("%1").arg(hh%24);//=10
                uint8_t  ret = temp.toInt()+rethh;
                h2 = QString("%1").arg(ret).at(1);
                 h1 = QString("%1").arg(hh%24).at(0);
             }
              else //<10
              {

                  QString temp  = QString("%1").arg(hh%24);//=9
                  uint8_t  ret = temp.toInt()+rethh;
                  if(ret ==10)//10:00
                  {
                           h1 = QString("1");
                           h2 = QString("0");
                  }
                  else {
                      h1 = QString("0");
                      h2 = QString("%1").arg(ret);
                  }
              }
        }
        else  if(mm<10 )
        {
             m4 = QString("%1").arg(mm%60);
             m3 = QString("%1").arg(0);
             //小時(shí)計(jì)算和求值
             if(hh >23)//半夜三更
             {
                 h2 = QString("%1").arg(QString("%1").arg(hh%24).toInt());
                 h1 = QString("0");
             }
             else if(hh == 23)//晚上:00.00
             {
                 h1 = QString("%1").arg(QString("0").toInt());
                 h2 = QString("0");
             }
             else if(hh>=10&&hh<=22)
            {

               QString temp  = QString("%1").arg(hh%24);//=10
               uint8_t  ret = temp.toInt();
               h2 = QString("%1").arg(ret).at(1);
                h1 = QString("%1").arg(hh%24).at(0);
            }
             else //<10
             {
                 uint8_t temp  = QString("%1").arg(hh%24).toInt();//=9
                 h1 = QString("0");
                 h2 = QString("%1").arg(temp);
             }
        }
        else//     10<=mm>=59
         {
                m4 = QString(QString("%1").arg(mm%60).at(1));
                m3 = QString(QString("%1").arg(mm%60).at(0));
                //小時(shí)計(jì)算和求值
                if(hh >23)//半夜三更
                {
                    h2 = QString("%1").arg(QString("%1").arg(hh%24).toInt());
                    h1 = QString("0");
                }
                else if(hh == 23)//晚上:00.00
                {
                    h1 = QString("%1").arg(QString("0").toInt());
                    h2 = QString("0");
                }
                else if(hh>=10&&hh<=22)
               {
                    QString temp  = QString("%1").arg(hh%24);//=10
                    uint8_t  ret = temp.toInt();
                    h2 = QString("%1").arg(ret).at(1);
                    h1 = QString("%1").arg(hh%24).at(0);
               }
                else //<10
                {
                    uint8_t temp  = QString("%1").arg(hh%24).toInt();//=9
                    h1 = QString("0");
                    h2 = QString("%1").arg(temp);
                }
         }
         ui->label_Rinseendime->setText(QString("%1%2%3:%4%5").arg("結(jié)束時(shí)間 ").arg(h1).arg(h2).arg(m3).arg(m4));//總治療剩余時(shí)間
         ui->label_Rinsestarttime->show();
         ui->label_Rinseendime->show();
    }
    else
    {
        //擴(kuò)展
    }
}


實(shí)現(xiàn)的效果

【5】總結(jié)

代碼實(shí)現(xiàn)沒問題,已經(jīng)調(diào)試和計(jì)算過,上面結(jié)束時(shí)間已經(jīng)修改過,但是我只教方法,也作為一個(gè)記錄,以后遇上直接調(diào)用即可,大家平時(shí)寫代碼也要養(yǎng)成這種習(xí)慣,我不信你什么都能記住,封裝好自己的庫(kù)工作壓力減輕一半。

到此這篇關(guān)于QT實(shí)現(xiàn)將兩個(gè)時(shí)間相加的算法[hh: mm + hh: mm]的示例代碼的文章就介紹到這了,更多相關(guān)QT時(shí)間相加內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 從C語(yǔ)言過渡到C++之引用(別名)

    從C語(yǔ)言過渡到C++之引用(別名)

    本文給大家講解的是在從C語(yǔ)言過渡到C++中的引用的區(qū)別及簡(jiǎn)單示例,有需要的小伙伴可以參考下
    2017-07-07
  • C++實(shí)現(xiàn)LeetCode(147.鏈表插入排序)

    C++實(shí)現(xiàn)LeetCode(147.鏈表插入排序)

    這篇文章主要介紹了C++實(shí)現(xiàn)LeetCode(147.鏈表插入排序),本篇文章通過簡(jiǎn)要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-07-07
  • C++?結(jié)合?opencv讀取圖片與視頻的方法

    C++?結(jié)合?opencv讀取圖片與視頻的方法

    這篇文章主要介紹了C++?結(jié)合?opencv讀取圖片與視頻,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-06-06
  • C++ 中封裝的含義和簡(jiǎn)單實(shí)現(xiàn)方式

    C++ 中封裝的含義和簡(jiǎn)單實(shí)現(xiàn)方式

    這篇文章主要介紹了C++ 中封裝的含義和簡(jiǎn)單實(shí)現(xiàn)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-07-07
  • C++實(shí)現(xiàn)FTP綜合應(yīng)用詳解

    C++實(shí)現(xiàn)FTP綜合應(yīng)用詳解

    這篇文章主要為大家詳細(xì)介紹了C++實(shí)現(xiàn)FTP綜合應(yīng)用,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-08-08
  • C++超詳細(xì)講解隱藏私有屬性和方法的兩種實(shí)現(xiàn)方式

    C++超詳細(xì)講解隱藏私有屬性和方法的兩種實(shí)現(xiàn)方式

    為了避免因?yàn)閷㈩悗?kù)中的私有成員開放給類的使用方而導(dǎo)致的軟件邏輯外泄,因此需要將對(duì)外代碼中的私有成員隱藏起來(lái),下面我們來(lái)了解一下隱藏私有屬性和方法的兩種實(shí)現(xiàn)方式
    2022-05-05
  • C++類繼承之子類調(diào)用父類的構(gòu)造函數(shù)的實(shí)例詳解

    C++類繼承之子類調(diào)用父類的構(gòu)造函數(shù)的實(shí)例詳解

    這篇文章主要介紹了C++類繼承之子類調(diào)用父類的構(gòu)造函數(shù)的實(shí)例詳解的相關(guān)資料,希望通過本文大家能夠掌握C++類繼承的相關(guān)知識(shí),需要的朋友可以參考下
    2017-09-09
  • c++字符串分割的方法

    c++字符串分割的方法

    這篇文章主要介紹了c++字符串分割的方法,幫助大家更好的理解和學(xué)習(xí)c++,感興趣的朋友可以了解下
    2020-08-08
  • C和C++的區(qū)別詳解

    C和C++的區(qū)別詳解

    這篇文章主要介紹了C和C++之間的區(qū)別,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-10-10
  • C++ OpenCV實(shí)現(xiàn)圖像修復(fù)功能

    C++ OpenCV實(shí)現(xiàn)圖像修復(fù)功能

    這篇文章主要介紹了通過C++ OpenCV中提供的inpaint API實(shí)現(xiàn)對(duì)有瑕疵的圖像進(jìn)行修復(fù),文中的方法講解詳細(xì),感興趣的同學(xué)可以跟隨小編一起學(xué)習(xí)一下
    2022-01-01

最新評(píng)論