main.cpp 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. #include "view/MainWindow.h"
  2. #include "helper/GenerateMiniDump.h"
  3. #include <QApplication>
  4. #include <QTranslator>
  5. #include <QScreen>
  6. #include <QDesktopWidget>
  7. #include <QTextCodec>
  8. #include <locale>
  9. int main(int argc, char *argv[])
  10. {
  11. DUMP_FILE_HOOK_HANLE;
  12. QTextCodec::setCodecForLocale(QTextCodec::codecForName("UTF-8"));
  13. std::locale::global(std::locale(""));
  14. #ifndef QT_NO_OPENGL
  15. QCoreApplication::setAttribute(Qt::AA_ShareOpenGLContexts, true);
  16. #endif
  17. QCoreApplication::setAttribute(Qt::AA_DontCreateNativeWidgetSiblings, true);
  18. QCoreApplication::setAttribute(Qt::AA_DisableShaderDiskCache, true);
  19. // Set application attributes
  20. #if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
  21. QCoreApplication::setAttribute(Qt::AA_UseHighDpiPixmaps, true);
  22. QApplication::setAttribute(Qt::AA_EnableHighDpiScaling, true);
  23. #endif
  24. QCoreApplication::setAttribute(Qt::AA_CompressHighFrequencyEvents, true);
  25. QApplication a(argc, argv);
  26. a.setApplicationVersion("2.0");
  27. a.setApplicationName("QFD2");
  28. a.setApplicationDisplayName("伪装防护评估系统软件");
  29. Q_INIT_RESOURCE(qfluentwidgets);
  30. QTranslator *translator = new QTranslator();
  31. translator->load(QLocale::system(), ":/resource/i18n/qfluentwidgets_zh.qm");
  32. QCoreApplication::installTranslator(translator);
  33. MainWindow w;
  34. // 居中显示窗体
  35. w.move((QApplication::primaryScreen()->availableGeometry().width() - w.width()) / 2,
  36. (QApplication::primaryScreen()->availableGeometry().height() - w.height()) / 2);
  37. w.show();
  38. return a.exec();
  39. }