From 525d6adb0ccc5a84c65aaba4ed8d02fe0676575f Mon Sep 17 00:00:00 2001 From: Carl <732416424@qq.com> Date: Fri, 8 Nov 2024 10:59:42 +0800 Subject: [PATCH] [Add] Release Version 1.1.0 modify the login ui and some others --- Image/bluesun.png | Bin 0 -> 23113 bytes Image/bunuo.png | Bin 0 -> 3200 bytes dialoglogin.cpp | 58 ++-- dialoglogin.ui | 712 +++++++++++++++++++++++----------------------- image.qrc | 2 + main.cpp | 1 + mainwindow.cpp | 157 +++++----- mainwindow.ui | 131 ++++++--- modbusrtu.cpp | 4 +- 9 files changed, 569 insertions(+), 496 deletions(-) create mode 100644 Image/bluesun.png create mode 100644 Image/bunuo.png diff --git a/Image/bluesun.png b/Image/bluesun.png new file mode 100644 index 0000000000000000000000000000000000000000..d619c9b6a41453cf228c096c66b8d0c640479c12 GIT binary patch literal 23113 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, &QPushButton::clicked, this, &DialogLogin::slot_btnConnect_clicked); + ui->groupBox->setStyleSheet("QGroupBox { border: none; }"); + + ui->label_bluesunLogo->setStyleSheet("QLabel { background-image: url(:/Image/bluesun.png); " + "background-repeat: no-repeat; background-size: cover; background-position: center center;}"); // //将背景设置为白色 // ui->groupBox->setStyleSheet("background-color: #FFFFFF;"); + m_MainWindow->setStyleSheet("background-color: #FFFFFF;"); + // //传递BCU个数的信号与槽 // BCUNumbers = ui->comboBoxBCUQuantity->currentText().toInt(); // qDebug() << "the number of the BCU: " << BCUNumbers; @@ -101,6 +107,7 @@ void DialogLogin::init() m_ModbusRTU->quit(); }); + // ui->btnConnect->setStyleSheet("QPushButton { background-color: lightgray; color: black; border: none; }"); //主窗口接受语言选择number的信号与槽的连接 connect(this, &DialogLogin::sendLanNumberSignals, m_MainWindow, &MainWindow::getLanNumberSlot); @@ -116,6 +123,9 @@ void DialogLogin::init() connect(m_MainWindow, &MainWindow::row_of_bmus_index, m_ModbusRTU, &ModbusRTU::change_BMUIndex_slot); + // ui->btnConnect->setStyleSheet("QPushButton { background-color: #87CEFA; color: white; }" + // "QPushButton:hover { background-color: #77B5D6; color: white; }"); + // QMetaObject::invokeMethod(m_ModbusRTU,"read_regs_slot",Qt::QueuedConnection); // connect(m_ModbusRTU, &ModbusRTU::sig_readMoveToThread, m_ModbusRTU, &ModbusRTU::read_regs_slot, Qt::QueuedConnection); // thread = new QThread; @@ -161,29 +171,29 @@ void DialogLogin::mainwindowInit() connect(m_MainWindow, &MainWindow::showLogin, this, [=]{ this->show(); }); - connect(this, &DialogLogin::finished, m_MainWindow, [=]{ - m_MainWindow->ui->btnSetup->setStyleSheet("#btnSetup{" - "background-image: url(:/Image/advance-set-line.png);" - "background-repeat: no-repeat;" - "background-position: center;" - "background-color: rgba(255, 255, 255, 0);" - "}" - "#btnSetup::hover{" - "background-image: url(:/Image/advance-set-line1.png);" - "background-repeat: no-repeat;" - "background-position: center;" - "background-color: rgba(255, 255, 255, 0);" - "}"); - }); - connect(m_MainWindow->ui->btnSetup, &QPushButton::pressed, this, [=]{ - qDebug() << __FUNCTION__ << "disconnected"; - m_ModbusRTU->isConnect = false; - m_MainWindow->statusBarConnectedIcon->setPixmap(QPixmap(QIcon(":/Image/connected1.png").pixmap(QSize(24, 24)))); - m_Serial->m_SerialPort->close(); - m_ModbusRTU->modbusRTUDisconnect(); - ui->comboBoxSerialPort->clear(); - ui->comboBoxSerialPort->addItems(m_Serial->getAvailablePort()); - }); + // connect(this, &DialogLogin::finished, m_MainWindow, [=]{ + // m_MainWindow->ui->btnSetup->setStyleSheet("#btnSetup{" + // "background-image: url(:/Image/advance-set-line.png);" + // "background-repeat: no-repeat;" + // "background-position: center;" + // "background-color: rgba(255, 255, 255, 0);" + // "}" + // "#btnSetup::hover{" + // "background-image: url(:/Image/advance-set-line1.png);" + // "background-repeat: no-repeat;" + // "background-position: center;" + // "background-color: rgba(255, 255, 255, 0);" + // "}"); + // }); + // connect(m_MainWindow->ui->btnSetup, &QPushButton::pressed, this, [=]{ + // qDebug() << __FUNCTION__ << "disconnected"; + // m_ModbusRTU->isConnect = false; + // m_MainWindow->statusBarConnectedIcon->setPixmap(QPixmap(QIcon(":/Image/connected1.png").pixmap(QSize(24, 24)))); + // m_Serial->m_SerialPort->close(); + // m_ModbusRTU->modbusRTUDisconnect(); + // ui->comboBoxSerialPort->clear(); + // ui->comboBoxSerialPort->addItems(m_Serial->getAvailablePort()); + // }); } void DialogLogin::slot_comChangeStatus(QString name, bool flag) @@ -196,7 +206,7 @@ void DialogLogin::slot_comChangeStatus(QString name, bool flag) void DialogLogin::slot_btnConnect_clicked() { - BCUNumbers = ui->comboBoxBCUQuantity->currentText().toInt(); + // BCUNumbers = ui->comboBoxBCUQuantity->currentText().toInt(); QString language = ui->comboBoxLanguage->currentText(); if (language == "English") diff --git a/dialoglogin.ui b/dialoglogin.ui index 01bf0d8..3feae8c 100644 --- a/dialoglogin.ui +++ b/dialoglogin.ui @@ -6,8 +6,8 @@ 0 0 - 260 - 320 + 430 + 539 @@ -20,33 +20,7 @@ Dialog - - - - Qt::Vertical - - - - 20 - 40 - - - - - - - - - 黑体 - 10 - - - - Connect - - - - + @@ -55,344 +29,370 @@ - Communication + - - - - - - 黑体 - 10 - - + + + - - 5 - + + + + 0 + 0 + + + + + + - - 6 - + + + + + + 华文中宋 + 10 + + + + Language + + + Qt::AlignCenter + + + + + + + + 华文中宋 + 10 + + + + + Chinese + + + + + English + + + + + + + + + 华文中宋 + 10 + + + + Serial Port + + + Qt::AlignCenter + + + + + + + + 华文中宋 + 10 + + + + + + + + + 华文中宋 + 10 + + + + Baud Rate + + + Qt::AlignCenter + + + + + + + + 华文中宋 + 10 + + + + + 1200 + + + + + 2400 + + + + + 4800 + + + + + 9600 + + + + + 19200 + + + + + 38400 + + + + + 57600 + + + + + 115200 + + + + + + + + + 华文中宋 + 10 + + + + Data Bits + + + Qt::AlignCenter + + + + + + + + 华文中宋 + 10 + + + + + 5 + + + + + 6 + + + + + 7 + + + + + 8 + + + + + + + + + 华文中宋 + 10 + + + + Stop Bits + + + Qt::AlignCenter + + + + + + + + 华文中宋 + 10 + + + + + 1 + + + + + 2 + + + + + + + + + 华文中宋 + 10 + + + + Parity + + + Qt::AlignCenter + + + + + + + + 华文中宋 + 10 + + + + + None + + + + + Odd + + + + + Even + + + + + - - 7 - + + + Qt::Vertical + + + + 20 + 40 + + + - - 8 - - - - - - - - - 黑体 - 10 - - - - - - - - - 黑体 - 10 - - - - - 1 - + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + + 0 + 0 + + + + + 40 + 0 + + + + + 黑体 + 10 + + + + Connect + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + - - 2 - + + + + 0 + 0 + + + + + 幼圆 + 11 + + + + <html><head/><body><p align="center">Copyright © 2016 Bluesun Solar Co.,Ltd </p><p align="center">All Rights Reserved.</p></body></html> + + + Qt::AlignCenter + + - - - - - - - 黑体 - 10 - - - - - 1 - - - - - 2 - - - - - 3 - - - - - 4 - - - - - 5 - - - - - 6 - - - - - 7 - - - - - 8 - - - - - 9 - - - - - 10 - - - - - 11 - - - - - 12 - - - - - 13 - - - - - 14 - - - - - 15 - - - - - 16 - - - - - - - - - 黑体 - 10 - - - - - 1200 - - - - - 2400 - - - - - 4800 - - - - - 9600 - - - - - 19200 - - - - - 38400 - - - - - 57600 - - - - - 115200 - - - - - - - - - 黑体 - 10 - - - - Baud Rate - - - - - - - - 黑体 - 10 - - - - Stop Bits - - - - - - - - 黑体 - 10 - - - - BCU Quantity - - - - - - - - 黑体 - 10 - - - - Serial Port - - - - - - - - 黑体 - 10 - - - - Parity - - - - - - - - 黑体 - 10 - - - - Data Bits - - - - - - - - 黑体 - 10 - - - - - None - - - - - Odd - - - - - Even - - - - - - - - - 黑体 - 10 - - - - Language - - - - - - - - 黑体 - 10 - - - - - Chinese - - - - - English - - - + diff --git a/image.qrc b/image.qrc index 8d7d6a4..af823f6 100644 --- a/image.qrc +++ b/image.qrc @@ -35,5 +35,7 @@ Image/record-out-black.png Image/record-out-gray.png Image/record-out-green.png + Image/bluesun.png + Image/bunuo.png diff --git a/main.cpp b/main.cpp index d978a69..191f0ff 100644 --- a/main.cpp +++ b/main.cpp @@ -17,6 +17,7 @@ int main(int argc, char *argv[]) QApplication a(argc, argv); a.setStyleSheet("QToolTip { font-size: 18px; font-family: 'SimHei'; }"); DialogLogin loginWidget; + loginWidget.setStyleSheet("background-color: #FFFFFF;"); loginWidget.show(); return a.exec(); } diff --git a/mainwindow.cpp b/mainwindow.cpp index bf8e39c..548a476 100644 --- a/mainwindow.cpp +++ b/mainwindow.cpp @@ -212,6 +212,7 @@ void MainWindow::init() // ui->scrollAreaChart->setFrameShape(QFrame::NoFrame); // ui->scrollAreaChart->setStyleSheet("background-color: #FFFFFF;"); //设置背景颜色为纯白色 + ui->scrollArea_trouble->setStyleSheet("border: none;"); ui->widgetControl->setStyleSheet("background-color: #FFFFFF;"); ui->groupBox->setStyleSheet("background-color: #FFFFFF;"); ui->groupBox_trouble_control->setStyleSheet("background-color: #FFFFFF;"); @@ -239,8 +240,6 @@ void MainWindow::init() ui->btnParaSet->setToolTip("参数设置(Parameter Settings)"); ui->btnDebug->setToolTip("报文信息(Message Information)"); ui->btnFlash->setToolTip("升级调试(Upgrade Debugging)"); - ui->btnSetup->setToolTip("串口信息(Serial Port)"); - ui->btnSetup->setStyleSheet("QToolTip { position: absolute; left: 20px; top: 20px; }"); // ui->btnRecord->setToolTip("记录导出"); @@ -698,18 +697,18 @@ void MainWindow::setMenuStyle() "background-color: rgba(255, 255, 255, 0);" "}"); - ui->btnSetup->setStyleSheet("#btnSetup{" - "background-image: url(:/Image/advance-set-line.png);" - "background-repeat: no-repeat;" - "background-position: center;" - "background-color: rgba(255, 255, 255, 0);" - "}" - "#btnSetup::hover{" - "background-image: url(:/Image/advance-set-line1.png);" - "background-repeat: no-repeat;" - "background-position: center;" - "background-color: rgba(255, 255, 255, 0);" - "}"); + // ui->btnSetup->setStyleSheet("#btnSetup{" + // "background-image: url(:/Image/advance-set-line.png);" + // "background-repeat: no-repeat;" + // "background-position: center;" + // "background-color: rgba(255, 255, 255, 0);" + // "}" + // "#btnSetup::hover{" + // "background-image: url(:/Image/advance-set-line1.png);" + // "background-repeat: no-repeat;" + // "background-position: center;" + // "background-color: rgba(255, 255, 255, 0);" + // "}"); // ui->btnRecord->setStyleSheet("#btnRecord{" // "background-image: url(:/Image/record-out-black.png);" @@ -786,18 +785,18 @@ void MainWindow::setMenuStyle() "background-color: rgba(255, 255, 255, 0);" "}"); - ui->btnSetup->setStyleSheet("#btnSetup{" - "background-image: url(:/Image/advance-set-line.png);" - "background-repeat: no-repeat;" - "background-position: center;" - "background-color: rgba(255, 255, 255, 0);" - "}" - "#btnSetup::hover{" - "background-image: url(:/Image/advance-set-line1.png);" - "background-repeat: no-repeat;" - "background-position: center;" - "background-color: rgba(255, 255, 255, 0);" - "}"); + // ui->btnSetup->setStyleSheet("#btnSetup{" + // "background-image: url(:/Image/advance-set-line.png);" + // "background-repeat: no-repeat;" + // "background-position: center;" + // "background-color: rgba(255, 255, 255, 0);" + // "}" + // "#btnSetup::hover{" + // "background-image: url(:/Image/advance-set-line1.png);" + // "background-repeat: no-repeat;" + // "background-position: center;" + // "background-color: rgba(255, 255, 255, 0);" + // "}"); // ui->btnRecord->setStyleSheet("#btnRecord{" // "background-image: url(:/Image/record-out-black.png);" @@ -874,18 +873,18 @@ void MainWindow::setMenuStyle() "background-color: rgba(255, 255, 255, 0);" "}"); - ui->btnSetup->setStyleSheet("#btnSetup{" - "background-image: url(:/Image/advance-set-line.png);" - "background-repeat: no-repeat;" - "background-position: center;" - "background-color: rgba(255, 255, 255, 0);" - "}" - "#btnSetup::hover{" - "background-image: url(:/Image/advance-set-line1.png);" - "background-repeat: no-repeat;" - "background-position: center;" - "background-color: rgba(255, 255, 255, 0);" - "}"); + // ui->btnSetup->setStyleSheet("#btnSetup{" + // "background-image: url(:/Image/advance-set-line.png);" + // "background-repeat: no-repeat;" + // "background-position: center;" + // "background-color: rgba(255, 255, 255, 0);" + // "}" + // "#btnSetup::hover{" + // "background-image: url(:/Image/advance-set-line1.png);" + // "background-repeat: no-repeat;" + // "background-position: center;" + // "background-color: rgba(255, 255, 255, 0);" + // "}"); // ui->btnRecord->setStyleSheet("#btnRecord{" // "background-image: url(:/Image/record-out-black.png);" @@ -962,18 +961,18 @@ void MainWindow::setMenuStyle() "background-color: rgba(255, 255, 255, 0);" "}"); - ui->btnSetup->setStyleSheet("#btnSetup{" - "background-image: url(:/Image/advance-set-line.png);" - "background-repeat: no-repeat;" - "background-position: center;" - "background-color: rgba(255, 255, 255, 0);" - "}" - "#btnSetup::hover{" - "background-image: url(:/Image/advance-set-line1.png);" - "background-repeat: no-repeat;" - "background-position: center;" - "background-color: rgba(255, 255, 255, 0);" - "}"); + // ui->btnSetup->setStyleSheet("#btnSetup{" + // "background-image: url(:/Image/advance-set-line.png);" + // "background-repeat: no-repeat;" + // "background-position: center;" + // "background-color: rgba(255, 255, 255, 0);" + // "}" + // "#btnSetup::hover{" + // "background-image: url(:/Image/advance-set-line1.png);" + // "background-repeat: no-repeat;" + // "background-position: center;" + // "background-color: rgba(255, 255, 255, 0);" + // "}"); // ui->btnRecord->setStyleSheet("#btnRecord{" // "background-image: url(:/Image/record-out-black.png);" @@ -1050,29 +1049,29 @@ void MainWindow::setMenuStyle() "background-color: rgba(255, 255, 255, 0);" "}"); - ui->btnSetup->setStyleSheet("#btnSetup{" - "background-image: url(:/Image/advance-set-line.png);" - "background-repeat: no-repeat;" - "background-position: center;" - "background-color: rgba(255, 255, 255, 0);" - "}" - "#btnSetup::hover{" - "background-image: url(:/Image/advance-set-line1.png);" - "background-repeat: no-repeat;" - "background-position: center;" - "background-color: rgba(255, 255, 255, 0);" - "}"); + // ui->btnSetup->setStyleSheet("#btnSetup{" + // "background-image: url(:/Image/advance-set-line.png);" + // "background-repeat: no-repeat;" + // "background-position: center;" + // "background-color: rgba(255, 255, 255, 0);" + // "}" + // "#btnSetup::hover{" + // "background-image: url(:/Image/advance-set-line1.png);" + // "background-repeat: no-repeat;" + // "background-position: center;" + // "background-color: rgba(255, 255, 255, 0);" + // "}"); }); - connect(ui->btnSetup, &QPushButton::pressed, this, [=]{ - emit showLogin(); - ui->btnSetup->setStyleSheet("#btnSetup{" - "background-image: url(:/Image/advance-set-line2.png);" - "background-repeat: no-repeat;" - "background-position: center;" - "background-color: rgba(255, 255, 255, 0);" - "}"); - }); + // connect(ui->btnSetup, &QPushButton::pressed, this, [=]{ + // emit showLogin(); + // ui->btnSetup->setStyleSheet("#btnSetup{" + // "background-image: url(:/Image/advance-set-line2.png);" + // "background-repeat: no-repeat;" + // "background-position: center;" + // "background-color: rgba(255, 255, 255, 0);" + // "}"); + // }); ui->btn_close_neg->setStyleSheet("QPushButton { background-color: #87CEFA; color: white; }" "QPushButton:hover { background-color: #77B5D6; color: white; }"); @@ -1086,6 +1085,21 @@ void MainWindow::setMenuStyle() "QPushButton:hover { background-color: #77B5D6; color: white; }"); ui->btn_open_pos->setStyleSheet("QPushButton { background-color: #87CEFA; color: white; }" "QPushButton:hover { background-color: #77B5D6; color: white; }"); + + ui->pageParaSetRead->setStyleSheet("QPushButton { background-color: #87CEFA; color: white; }" + "QPushButton:hover { background-color: #77B5D6; color: white; }"); + ui->pageParaSetWrite->setStyleSheet("QPushButton { background-color: #87CEFA; color: white; }" + "QPushButton:hover { background-color: #77B5D6; color: white; }"); + ui->btnGetVersion->setStyleSheet("QPushButton { background-color: #87CEFA; color: white; }" + "QPushButton:hover { background-color: #77B5D6; color: white; }"); + ui->btnStartUpgrade->setStyleSheet("QPushButton { background-color: #87CEFA; color: white; }" + "QPushButton:hover { background-color: #77B5D6; color: white; }"); + ui->btnImport->setStyleSheet("QPushButton { background-color: #87CEFA; color: white; }" + "QPushButton:hover { background-color: #77B5D6; color: white; }"); + ui->btnSendData->setStyleSheet("QPushButton { background-color: #87CEFA; color: white; }" + "QPushButton:hover { background-color: #77B5D6; color: white; }"); + ui->pageDebugBtnClear->setStyleSheet("QPushButton { background-color: #87CEFA; color: white; }" + "QPushButton:hover { background-color: #77B5D6; color: white; }"); } void MainWindow::slot_pageDebugDisplayMessage(QByteArray byteArray, int dataType, uint16_t *data) @@ -4215,6 +4229,7 @@ void MainWindow::on_pageParaSetWrite_clicked() for (int i=0; i #widget{ - background-color: rgb(161, 161, 161); + background-color: rgb(245, 245, 220); max-width:60px; } - + 0 @@ -233,39 +233,6 @@ background-color: rgba(255, 255, 255, 0); - - - - - 0 - 0 - - - - - 62 - 62 - - - - <html><head/><body><p><span style=" font-size:12pt;">串口信息</span></p></body></html> - - - -1 - - - #btnSetup{ -background-image: url(:/Image/advance-set-line2.png); -background-repeat: no-repeat; -background-position: center; -background-color: rgba(255, 255, 255, 0); -} - - - - - - @@ -758,7 +725,7 @@ background-color: rgba(255, 255, 255, 0); - + true @@ -768,7 +735,7 @@ background-color: rgba(255, 255, 255, 0); 0 0 1041 - 448 + 450 @@ -2290,8 +2257,8 @@ background-color: rgba(255, 255, 255, 0); - 黑体 - 10 + 华文中宋 + 11 @@ -2386,8 +2353,8 @@ background-color: rgba(255, 255, 255, 0); - 黑体 - 10 + 华文中宋 + 11 @@ -2461,6 +2428,12 @@ background-color: rgba(255, 255, 255, 0); + + + 华文中宋 + 12 + + 1 @@ -7813,11 +7786,23 @@ background-color: rgba(255, 255, 255, 0); + + + 华文中宋 + 12 + + + + + 黑体 + 12 + + - 0 + 1 @@ -10492,7 +10477,7 @@ background-color: rgba(255, 255, 255, 0); - + @@ -10508,6 +10493,18 @@ background-color: rgba(255, 255, 255, 0); + + + 0 + 0 + + + + + 华文中宋 + 11 + + 全部勾选 @@ -10528,6 +10525,18 @@ background-color: rgba(255, 255, 255, 0); + + + 0 + 0 + + + + + 华文中宋 + 11 + + 读取 @@ -10535,6 +10544,18 @@ background-color: rgba(255, 255, 255, 0); + + + 0 + 0 + + + + + 华文中宋 + 11 + + 写入 @@ -10709,6 +10730,12 @@ li.checked::marker { content: "\2612"; } + + + 华文中宋 + 10 + + 显示 @@ -10729,6 +10756,12 @@ li.checked::marker { content: "\2612"; } + + + 华文中宋 + 10 + + 时间戳 @@ -10736,6 +10769,12 @@ li.checked::marker { content: "\2612"; } + + + 华文中宋 + 10 + + 发送数据 @@ -10743,6 +10782,12 @@ li.checked::marker { content: "\2612"; } + + + 华文中宋 + 10 + + 清除 diff --git a/modbusrtu.cpp b/modbusrtu.cpp index 690aca1..784f714 100644 --- a/modbusrtu.cpp +++ b/modbusrtu.cpp @@ -207,7 +207,7 @@ void ModbusRTU::write_regs_slot(int addr,const uint16_t data) // qDebug() << "write:进入线程:" << QThread::currentThread(); int rc = write_single_register(addr, data); if(MODBUS_ERR == rc) { - qDebug() << "######modbus no message"; + qDebug() << "write######modbus no message"; return; } } @@ -217,7 +217,7 @@ void ModbusRTU::read_regs_slot(int addr, int nb, uint16_t *data, int row) // qDebug() << "read:进入线程:" << QThread::currentThread(); int rc = read_holding_register(addr, nb, data); if(MODBUS_ERR == rc) { - // qDebug() << "modbus no message"; + qDebug() << "read modbus no message"; return; } else {