我使用Qt 5.5.0 MSVC 2013,32bit
我想创建最小的QtQuick应用程序。当我选择New Project - Qt Quick Application
时,我得到了包含2个QML文件的项目: main.qml 和 MainForm.ui.qml 。由于我不需要它们,我删除第二个并粘贴到 main.qml :
Import QtQuick 2.4
Rectangle{
id: root
visible: true
color: "gray"
width: 400
height: 800
}
但是当我运行项目时我什么也没得到。我在任务管理器中看到应用程序,但没有应用程序窗口 问题:是否可以使用Rectangle作为根元素创建.qml文件?
答案 0 :(得分:6)
用于创建 Qt快速应用的模板添加
QQmlApplicationEngine
以启动QML。但QQmlApplicationEngine
不能直接使用 Rectangle 或 Item 作为根元素,但需要任何窗口,如 Window 或 ApplicationWindow 。 因此,要使其适用于矩形,请使用QQuickView
而不是QQmlApplicationEngine
。
我将 main.cpp 的内容更改为
#include <QGuiApplication>
#include <QQuickView>
int main(int argc, char *argv[])
{
QGuiApplication app(argc, argv);
QQuickView *view = new QQuickView;
view->setSource(QUrl("qrc:/main.qml"));
view->show();
return app.exec();
}
它解决了我的问题。