Exemple #1
0
void MainWindow::updateLcd()
{
	int remainHour,remainMin,remainSec;
	remainHour=(timer->interval()-elapsedTimer.elapsed())/3600000;
	remainMin=((timer->interval()-elapsedTimer.elapsed())/1000-remainHour*3600)/60;
	remainSec=(timer->interval()-elapsedTimer.elapsed())/1000-remainHour*3600-remainMin*60;
	if(remainHour+remainMin+remainSec<=0){
		uiTimer->stop();
		ui->lcdNumber_4->display(0);
		ui->lcdNumber->display(0);
		ui->lcdNumber_2->display(0);
		ui->lcdNumber_3->display(0);

		ui->lcdNumber_8->display(0);
		ui->lcdNumber_5->display(0);
		ui->lcdNumber_6->display(0);
		ui->lcdNumber_7->display(0);
		isCounting=false;
		firstStart=true;
		ui->progressBar->setValue(100);
		timeIsOut();
		return;
	}
	double ms=timer->interval()-elapsedTimer.elapsed()-remainHour*3600000-remainMin*60000-remainSec*1000;
	ui->lcdNumber_4->display(ms);
	ui->lcdNumber->display(remainSec);
	ui->lcdNumber_2->display(remainMin);
	ui->lcdNumber_3->display(remainHour);
	ui->progressBar->setValue(((double)elapsedTimer.elapsed()/(double)timer->interval())*100);

	int remainTotalSec=totalMS-elapsedTimer.elapsed();
	remainHour=remainTotalSec/3600000;
	remainMin=(remainTotalSec/1000-remainHour*3600)/60;
	remainSec=remainTotalSec/1000-remainHour*3600-remainMin*60;
	ms=remainTotalSec-remainHour*3600000-remainMin*60000-remainSec*1000;
	ui->lcdNumber_8->display(ms);//ms
	ui->lcdNumber_5->display(remainSec);//s
	ui->lcdNumber_6->display(remainMin);//m
	ui->lcdNumber_7->display(remainHour);//h
	ui->progressBar_2->setValue(((double)elapsedTimer.elapsed()/(double)totalMS)*100);
}
Exemple #2
0
MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
	ui->setupUi(this);

	timer=new QTimer();
	uiTimer=new QTimer();
	connect(timer,SIGNAL(timeout()),this,SLOT(timeIsOut()));
	connect(uiTimer,SIGNAL(timeout()),this,SLOT(updateLcd()));

	hms t;
	t.h=t.m=t.s=t.ms=0;
	segTime.push_back(t);
	ui->listWidget->addItem(QString::number(ui->listWidget->count()+1));
	ui->spinBox->setEnabled(false);
	ui->spinBox_2->setEnabled(false);
	ui->spinBox_3->setEnabled(false);
	ui->progressBar->setValue(0);
	ui->progressBar_2->setValue(0);
}
    foreach (const QSerialPortInfo &serialPortInfo, QSerialPortInfo::availablePorts()) {
        str=serialPortInfo.portName();
        ui->comboBox_2->addItem(str);
    }
    ui->textEdit->setText(str);
    serial->setPortName("COM3");
    serial->setBaudRate(QSerialPort::Baud9600);
    serial->setDataBits(QSerialPort::Data8);
    serial->setParity(QSerialPort::NoParity);
    serial->setStopBits(QSerialPort::OneStop);
    serial->setFlowControl(QSerialPort::NoFlowControl);
    serial->open(QIODevice::ReadWrite);
    serial->write("resp8080\n");
    createMenus();
    connect(serial,SIGNAL(readyRead()),this,SLOT(serialReceived()));
    connect(timer,SIGNAL(timeout()),this,SLOT(timeIsOut()));
}

MainWindow::~MainWindow()
{
    vBox->close();
    vBox2->close();
    delete ui;
    delete vBox;
    delete vBox2;
    serial->close();
}



void MainWindow::timeIsOut(){