#include "mainwindow.h"
|
#include "ui_mainwindow.h"
|
|
#include<QValueAxis>
|
#include<QLineSeries>
|
|
MainWindow::MainWindow(QWidget *parent) :
|
QMainWindow(parent),
|
ui(new Ui::MainWindow)
|
{
|
ui->setupUi(this);
|
this->setGeometry(475,290,1600,1000);
|
showDate();
|
showTime();
|
chart_init();
|
|
}
|
|
MainWindow::~MainWindow()
|
{
|
delete ui;
|
}
|
|
void MainWindow::showDate()//文本浏览器显示实时日期
|
{
|
QTimer *timer = new QTimer(this);
|
connect(timer, &QTimer::timeout, this, [this](){
|
QString currentDate = QDate::currentDate().toString("yyyy-MM-dd");
|
ui->textBrowser_3->setText(currentDate);
|
ui->textBrowser_3->setAlignment(Qt::AlignCenter);
|
});
|
timer->start(500);
|
}
|
|
void MainWindow::showTime()//文本浏览器显示实时时间
|
{
|
QTimer *timer = new QTimer(this);
|
connect(timer, &QTimer::timeout, this, [this](){
|
QString currentTime = QTime::currentTime().toString("hh:mm:ss");
|
ui->textBrowser_4->setText(currentTime);
|
ui->textBrowser_4->setAlignment(Qt::AlignCenter);
|
});
|
timer->start(500);
|
}
|
|
void MainWindow::chart_init()//绘制折线图
|
{
|
//设置标题
|
QChart *chart_1=new QChart;
|
chart_1->setTitle("产量示意图");
|
ui->graphicsView->setChart(chart_1);
|
//设置x轴表示日期
|
QValueAxis *axis_x=new QValueAxis;
|
axis_x->setTitleText("日期");
|
axis_x->setRange(0,100);//设置值域
|
chart_1->addAxis(axis_x,Qt::AlignBottom);//沿底边显示
|
//设置y轴表示产量
|
QValueAxis *axis_y=new QValueAxis;
|
axis_y->setTitleText("产量");
|
axis_y->setRange(0,500);//设置值域
|
chart_1->addAxis(axis_y,Qt::AlignLeft);//沿左边显示
|
//实际生产量曲线
|
QLineSeries *line=new QLineSeries;
|
line->setName("实际生产量");
|
chart_1->addSeries(line);
|
qreal y;
|
for(int x=0;x<100;x++){
|
y=100;
|
line->append(x,y);
|
}
|
line->attachAxis(axis_x);//绑定x轴
|
line->attachAxis(axis_y);//绑定y轴
|
//计划生产量曲线
|
QLineSeries *line1=new QLineSeries;
|
line1->setName("计划生产量");
|
chart_1->addSeries(line1);
|
qreal y1;
|
for(int x=0;x<100;x++){
|
y1=100-x;
|
line1->append(x,y1);
|
}
|
line1->attachAxis(axis_x);//绑定x轴
|
line1->attachAxis(axis_y);//绑定y轴
|
//预测生产量曲线
|
QLineSeries *line2=new QLineSeries;
|
line2->setName("预测生产量");
|
chart_1->addSeries(line2);
|
qreal y2;
|
for(int x=0;x<100;x++){
|
y2=100+x;
|
line2->append(x,y2);
|
}
|
line2->attachAxis(axis_x);//绑定x轴
|
line2->attachAxis(axis_y);//绑定y轴
|
}
|