QML文件有两种加载方式:QQmlApplicationEngine 和 QQuickView,QQmlApplicationEngine的方式更新,且功能更强大,因此本文重点针对使用QQmlApplicationEngine加载QML文件的方式进行讲解。
QQmlApplicationEngine
QQmlApplicationEngine特点
- 使QQuickView APP可以由C++进行控制
- 将Qt.quit()和QCoreApplication::quit()进行了connect
- 自动从mail QML文件的相邻i18n文件夹中读取翻译文件
- 如果场景包含QQuickWindow,则自动设置孵化控制器。
- 自动将QQmlFileSelector设置为url解析器
engine方式加载qml的方法
使用QMl加载时,我们要保证以下几点:
- 加载的qml文件为一个Window而非item
visible
必须为true
,否则无法显示
qml文件如下:
1 | import QtQuick 2.6 // Text |
engine方式加载qml文件非常简单,只要定义一个engine,同时加载对应的qml文件即可。
QQuickView
1 | import QtQuick 2.0 |