#include #include #include int main(int argc, char *argv[]) { QGuiApplication app(argc, argv); app.setOrganizationName("FancyInput"); app.setApplicationName("FancyInput"); app.setApplicationVersion("1.2.0"); // Qt 6 默认启用高 DPI 缩放,叠层/遮罩坐标后续用 devicePixelRatio 归一化 QQmlApplicationEngine engine; // 关键:qt_add_qml_module 把 qmldir + QML 文件嵌入到 :/FancyInputQt/ 资源前缀下。 // 必须把 qrc:/ 加入 import path,QML 引擎才能发现内嵌模块; // 否则独立运行(无 build/ 下的磁盘模块目录)会报 // "Module FancyInputQt contains no type named Main"。 engine.addImportPath(QStringLiteral("qrc:/")); // QML 加载失败时以非零码退出(Qt 6.5+ 推荐用法) QObject::connect(&engine, &QQmlApplicationEngine::objectCreationFailed, &app, []() { QCoreApplication::exit(-1); }, Qt::QueuedConnection); engine.loadFromModule("FancyInputQt", "Main"); return app.exec(); }