起因
由于非正规计算机专业毕业,缺乏系统的计算机知识学习,虽然课余也自己进行补充学习,但一味地学习而不实践往往记忆较为肤浅,于是想通过一些不断地训练提高自己的编程技能。寻找后发现Qt自带的例子都比较简短却能够突出很多知识点,遂进行学习:
开始学习
从第一个开始选择enginio qml todos
分析该示例作用:
主要是帮助学习qml的使用并搭配enginio的使用。enginio使用先忽略,牵涉到的比较少,具体用到再细细分析。
分析主程序:
int main(int argc, char* argv[])
{
QGuiApplication app(argc,argv);
QQuickView view;
const QString appPath = QCoreApplication::applicationDirPath();
// This allows starting the example without previously defining QML2_IMPORT_PATH.
QDir qmlImportDir(appPath);
#if defined (Q_OS_WIN)
qmlImportDir.cd("..");
#endif
qmlImportDir.cd("../../../qml");
view.engine()->addImportPath(qmlImportDir.canonicalPath());
QObject::connect(view.engine(), SIGNAL(quit()), &app, SLOT(quit()));
BackendHelperContext *backendContext = new BackendHelperContext(&view);
view.engine()->rootContext()->setContextProperty("enginioBackendContext", backendContext);
view.setSource(QUrl("qrc:///" ENGINIO_SAMPLE_NAME ".qml"));
view.setResizeMode(QQuickView::SizeRootObjectToView

本文介绍了Qt QML Enginio Todos示例的学习过程,包括QGuiApplication、QQuickView的使用,重点分析了BackendHelperContext的Q_OBJECT、Q_PROPERTY以及pro文件中的配置。通过对示例的剖析,旨在帮助读者理解如何结合qml和enginio进行编程。
最低0.47元/天 解锁文章
506

被折叠的 条评论
为什么被折叠?



