#include #include #include #include #include #include #include #include #include class dashBoradDataWidget : public QWidget { public: QLabel* OKLabel; QLabel* NGLabel; QLabel* totalLabel; dashBoradDataWidget(QString dataName) { QPalette palette; palette.setColor(QPalette::WindowText, Qt::white); QFont font("微软雅黑", 14, QFont::Bold); QHBoxLayout* layout = new QHBoxLayout(); this->setLayout(layout); QVBoxLayout* vlayout1 = new QVBoxLayout(); QVBoxLayout* vlayout2 = new QVBoxLayout(); layout->addLayout(vlayout1); layout->addLayout(vlayout2); DashboardWidget* dashBoard = new DashboardWidget(); vlayout1->addWidget(dashBoard); vlayout1->setContentsMargins(0, 0, 0, 0); { QHBoxLayout* tempLayout = new QHBoxLayout(); QLabel* tempLabel = new QLabel(dataName + u8"OK数量:"); tempLabel->setFont(font); tempLabel->setPalette(palette); OKLabel = new QLabel("0"); OKLabel->setFont(font); OKLabel->setPalette(palette); tempLayout->addWidget(tempLabel); tempLayout->addWidget(OKLabel); vlayout2->addLayout(tempLayout); } { QHBoxLayout* tempLayout = new QHBoxLayout(); QLabel* tempLabel = new QLabel(dataName + u8"NG数量:"); tempLabel->setFont(font); tempLabel->setPalette(palette); NGLabel = new QLabel("0"); NGLabel->setFont(font); NGLabel->setPalette(palette); tempLayout->addWidget(tempLabel); tempLayout->addWidget(NGLabel); vlayout2->addLayout(tempLayout); } { QHBoxLayout* tempLayout = new QHBoxLayout(); QLabel* tempLabel = new QLabel(dataName + u8"总数量:"); tempLabel->setFont(font); tempLabel->setPalette(palette); totalLabel = new QLabel("0"); totalLabel->setFont(font); totalLabel->setPalette(palette); tempLayout->addWidget(tempLabel); tempLayout->addWidget(totalLabel); vlayout2->addLayout(tempLayout); } } void addOk() { } void addNG() { } }; class summaryDataManager { public: fancyWidget* widget; QLabel* productNameLabel; std::vector< dashBoradDataWidget*> dashBoardWidgets; summaryDataManager() { QPalette palette; palette.setColor(QPalette::WindowText, Qt::white); QFont font("微软雅黑", 14, QFont::Bold); widget = new fancyWidget(u8"运行数据"); fancyButtonText* resetBtn = new fancyButtonText(80,40,u8"重置", u8"重置跑料数据"); widget->titlelayout->addWidget(resetBtn); widget->titlelayout->setAlignment(Qt::AlignLeft| Qt::AlignTop); QVBoxLayout* layout = new QVBoxLayout(); widget->dataWidget.setLayout(layout); dashBoradDataWidget* _dashBoradDataWidget = new dashBoradDataWidget(u8"测量"); dashBoradDataWidget* _dashBoradDataWidget2 = new dashBoradDataWidget(u8"检测"); layout->addWidget(_dashBoradDataWidget); layout->addWidget(_dashBoradDataWidget2); FrequencyBar* progressBar=new FrequencyBar("totalCT"); progressBar->setProgress(0.5); layout->addWidget(progressBar); FrequencyBar* progressBar2 = new FrequencyBar("cc_ImageCT"); progressBar2->setProgress(0.3); layout->addWidget(progressBar2); FrequencyBar* progressBar3 = new FrequencyBar("ai_ImageCT"); progressBar3->setProgress(0.8); layout->addWidget(progressBar3); switchProductWidget* _switchProductWidget = new switchProductWidget(); layout->addWidget(_switchProductWidget); LogWindow* log = new LogWindow(); layout->addWidget(log); } };