main.cpp 3.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. #include "mainwindow.h"
  2. #include "loginwindow.h"
  3. #include "logger.h"
  4. #include "fireWidget/firingwidget.h"
  5. #include <QApplication>
  6. #include <QFile>
  7. #include <QTextStream>
  8. #include <QQuickWindow> // 关键头文件
  9. int main(int argc, char *argv[])
  10. {
  11. QApplication app(argc, argv);
  12. QQuickWindow::setSceneGraphBackend("software"); // 兼容性: 禁用GPU
  13. /*TODO: delete
  14. * QString jsonString = "{\"app_version\":\"1.52\",\"blast_latitude\":\"30.21122186731856\",\"blast_longitude\":\"120.22146062951883\",\"blast_time\":\"2025-05-29 16:02:32\",\"company_code\":\"3701234300003\",\"equipment_sn\":\"F34A0000001\",\"error_deto_count\":\"0\",\"operator_identity\":\"330781198509079292\",\"operator_name\":\"栋工\",\"phone\":\"18611112222\",\"project_htid\":\"\",\"project_name\":\"sidf\",\"project_xmbh\":\"\",\"reg_deto_count\":\"2\",\"regs\":[{\"after_test_bus_i\":\"41\",\"after_test_bus_v\":\"8006\",\"before_blasting_i\":\"49\",\"before_blasting_v\":\"13492\",\"bus_leakage_current_i\":\"0\",\"dets\":[{\"delay_time\":\"0.0\",\"freq\":\"0\",\"in_code\":\"005AC8360A4C01A7\",\"out_code\":\"2411104F18000\",\"status\":\"0x00\",\"tag\":\"1-1-1\",\"uid\":\"24211104F18000\"},{\"delay_time\":\"80.0\",\"freq\":\"0\",\"in_code\":\"015AC8360A4C014E\",\"out_code\":\"2411104F18001\",\"status\":\"0x00\",\"tag\":\"1-2-1\",\"uid\":\"24211104F18001\"}],\"equipment_sn\":\"null\",\"equipment_version\":\"null\",\"error_deto_count\":\"0\",\"net_charged_i\":\"49\",\"net_charged_v\":\"13501\",\"reg_deto_count\":\"2\"}]}";
  15. // 使用 QJsonDocument::fromJson 直接解析 QByteArray 并获取 QJsonObject
  16. // 这是一个非常简洁的单行操作,假设你知道顶层是 JSON 对象且不关心详细的错误信息
  17. QJsonObject myJsonObject = QJsonDocument::fromJson(jsonString.toUtf8()).object();
  18. qDebug() <<"debug" << QDateTime::fromString(myJsonObject["blast_time"].toString(), "yyyy-MM-dd hh:mm:ss").toString();
  19. qDebug() <<"debug" << QDateTime::fromString(myJsonObject["blast_time"].toString(), "yyyy-MM-dd hh:mm:ss").toString(Qt::ISODateWithMs);
  20. */
  21. // 加载 QSS 文件
  22. QFile styleFile(":/qss/qss/tableview.qss");
  23. if (styleFile.open(QIODevice::ReadOnly | QIODevice::Text)) {
  24. QTextStream stream(&styleFile);
  25. QString styleSheet = stream.readAll();
  26. app.setStyleSheet(styleSheet);
  27. styleFile.close();
  28. }
  29. // // 获取屏幕信息
  30. // QScreen *screen = QGuiApplication::primaryScreen();
  31. // QRect screenGeometry = screen->geometry();
  32. // int screenWidth = screenGeometry.width();
  33. // int screenHeight = screenGeometry.height();
  34. // logger
  35. Logger::getInstance("application.log");
  36. Logger::getInstance().setMaxFileSize(2 * 1024 * 1024); // 2 MB
  37. Logger::getInstance().setMaxBackupFiles(3); // Keep 3 backup files
  38. Logger::getInstance().info("Application started from main.");
  39. //MainWindow w;
  40. // Page w;
  41. // pageTest w;
  42. LoginWindow w;
  43. //loginWindow.show();
  44. // 设置应用程序图标
  45. app.setWindowIcon(QIcon(":/icons/icons/l634z-aceaj-001.ico"));
  46. // w.resize(screenWidth * 1, screenHeight * 0.95);
  47. // firingWidget w;
  48. w.show();
  49. return app.exec();
  50. }