main.cpp 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. #include <QGuiApplication>
  2. #include <QQmlApplicationEngine>
  3. #include <QQmlContext>
  4. #include <QApplication>
  5. #include<QMessageBox>
  6. #include "TestService.h"
  7. #include "Standard.h"
  8. #include "Calibrationpara.h"
  9. #include "DLog.h"
  10. QObject *standardmananger_provider(QQmlEngine *engine, QJSEngine *scriptEngine)
  11. {
  12. Q_UNUSED(engine)
  13. Q_UNUSED(scriptEngine)
  14. return StandardManager::instance();
  15. }
  16. QObject *calibrationpara_provider(QQmlEngine *engine, QJSEngine *scriptEngine)
  17. {
  18. Q_UNUSED(engine)
  19. Q_UNUSED(scriptEngine)
  20. return CalibrationPara::instance();
  21. }
  22. int main(int argc, char *argv[])
  23. {
  24. qputenv("QT_IM_MODULE", QByteArray("qtvirtualkeyboard"));
  25. #if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
  26. QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling);
  27. #endif
  28. QApplication app(argc, argv);
  29. qInstallMessageHandler(myMsgOutput);
  30. DLog_Init();
  31. //QMessageBox::critical(NULL, "critical", "Content", QMessageBox::Yes | QMessageBox::No, QMessageBox::Yes);
  32. qmlRegisterSingletonType<StandardManager>("TService", 1, 0, "StandardManager",standardmananger_provider);
  33. qmlRegisterSingletonType<StandardManager>("TService", 1, 0, "CalibrationPara",calibrationpara_provider);
  34. qmlRegisterType<TestService>("TService",1,0,"TestService");
  35. StandardManager::instance();
  36. QQmlApplicationEngine engine;
  37. //engine.rootContext()->setContextProperty("TService",new TestService);
  38. const QUrl url(QStringLiteral("qrc:/main.qml"));
  39. QObject::connect(&engine, &QQmlApplicationEngine::objectCreated,
  40. &app, [url](QObject *obj, const QUrl &objUrl) {
  41. if (!obj && url == objUrl)
  42. QCoreApplication::exit(-1);
  43. }, Qt::QueuedConnection);
  44. engine.load(url);
  45. return app.exec();
  46. }