#include "mainwindow.h" #include "ui_mainwindow.h" #include "handle/seriport/serialbasehandle.h" MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) , ui(new Ui::MainWindow) { ui->setupUi(this); connect(ui->widgetLogin,&LoginForm::loginFinish,this,&MainWindow::backMenu); connect(ui->pageSelectValue,&SelectValueForm::back,this,&MainWindow::backMenu); connect(ui->pageAutoPack,&AutoPackForm::back,this,&MainWindow::backMenu); connect(ui->pagePackDetail,&PackDetailForm::back,this,&MainWindow::backMenu); connect(ui->pageSettings,&SettingsForm::back,this,&MainWindow::backMenu); connect(ui->pageDingZhong,&FixedWeightPackForm::back,this,&MainWindow::backMenu); connect(ui->pageBuDing,&UncertainWeightPackForm::back,this,&MainWindow::backMenu); connect(ui->pageSelectValue,&SelectValueForm::selectProject,this,&MainWindow::pageStatusChange); ui->stackedWidget->setCurrentWidget(ui->pageLogin); connect(ui->pageAutoPack,&AutoPackForm::djmbbox,this,&MainWindow::changedjmb); connect(ui->widgetLogin,&LoginForm::SettingsClicked,this,&MainWindow::changeToSettings); database.openDB(); database.createDetailsDatabase(); database.createProductDatabase(); } MainWindow::~MainWindow() { delete ui; } void MainWindow::on_pushDingZHong_clicked() { ui->stackedWidget->setCurrentWidget(ui->pageSelectValue); ui->pageSelectValue->getInfo(1,20); ui->pageSelectValue->setStatus(2); } void MainWindow::on_pushBuDingZhong_clicked() { ui->stackedWidget->setCurrentWidget(ui->pageSelectValue); ui->pageSelectValue->getInfo(1,20); ui->pageSelectValue->setStatus(3); } void MainWindow::on_pushAuto_clicked() { ui->stackedWidget->setCurrentWidget(ui->pageSelectValue); ui->pageSelectValue->getInfo(1,20); ui->pageSelectValue->setStatus(1); } void MainWindow::on_pushList_clicked() { ui->stackedWidget->setCurrentWidget(ui->pagePackDetail); } void MainWindow::on_pushConfig_clicked() { changeToSettings(); } void MainWindow::pageStatusChange(const ProjectInfo & info, int status) { switch (status) { case 1: ui->stackedWidget->setCurrentWidget(ui->pageAutoPack); ui->pageAutoPack->setProInfo(info); ui->pageAutoPack->init(); break; case 2: ui->stackedWidget->setCurrentWidget(ui->pageDingZhong); ui->pageDingZhong->setProInfo(info); ui->pageDingZhong->init(); break; case 3: ui->stackedWidget->setCurrentWidget(ui->pageBuDing); ui->pageBuDing->setProInfo(info); ui->pageBuDing->init(); break; } } void MainWindow::changeToSettings() { ui->stackedWidget->setCurrentWidget(ui->pageSettings); } void MainWindow::backMenu() { int user = GlobalInfo::this_()->user().userId; if(user==0){ ui->stackedWidget->setCurrentWidget(ui->pageLogin); return; } ui->stackedWidget->setCurrentWidget(ui->pageMain); if(!rtuport.isStart()){ auto go = GlobalInfo::this_(); ConfigInfo info; info.Start(); auto handle = SerialBaseHandle::getHandler(info.portType,""); rtuport.start(info.portName,info.portBaudRate.toInt(),handle); } } void MainWindow::changedjmb(QImage image) { ui->stackedWidget->setCurrentWidget(ui->pageTest); ui->djmb->setPixmap(QPixmap::fromImage(image)); }