13

我的设置是 Qt5.0.2 MinGW 32-bit

我正在寻找具有实际 C++ 类或至少{ Qt5.0.2 / QML / QtQuick2.0 / C++ }一个.Qt Quick 1.0main.cpp

我浏览了网络,浏览了所有可能找到的示例:

但它们要么是旧的(Qt Quick 1.0),要么是纯QML+ QtQuick 2.0 ,或者根本没有编译;或者如果他们可以编译,他们会向我展示空对话框(例如,诺基亚代码示例中的“ Status Shout! ”)。

任何建议将不胜感激。

4

2 回答 2

16

QML 上并没有那么多详细的资源,大部分可用的只是简短的代码片段示例和文档示例。这对于刚接触编程的人来说是个问题,因为这些材料并没有真正给出如何组合在实践中有用的东西的想法。

对于全新的 QtQuick2 来说更是如此,甚至文档和许多官方示例仍然不完整。而且我从经验中知道遵循教程,输入所有内容,期望它工作,并得到一些意想不到的东西是多么令人沮丧,不知道真正出了什么问题以及如何解决它。

话虽如此,有一些完整的,虽然是微不足道的游戏的例子,在 QtQuick1 中实现。这不是什么大问题,因为 QtQuick2 元素是向后兼容的,并且代码将与 QtQuick2 一起工作,几乎不需要修改。

官方示例虽然偶尔会损坏或不完整,但也可能会有所帮助,而且它们可能很快就会修复(现在是时候了):

最后但同样重要的是,来自 Qt 项目网站 wiki 的 QML 片段:

编辑:添加另一个学习 QML 的好资源:http: //qmlbook.org

于 2013-04-17T20:45:01.917 回答
2

一个相当简单的例子是:

主文件

#include <QGuiApplication>
#include <QQuickView>

int main(int argc, char** argv)
{
    QGuiApplication app(argc, argv);
    QQuickView view;
    view.resize(800, 480);
    view.setResizeMode(QQuickView::SizeRootObjectToView);
    view.setSource(QUrl("qrc:///foo.qml"));
    view.show();
    return app.exec();
}

foo.qml(这里捆绑为资源):

import QtQuick 2.0

Rectangle {
    color: "lightsteelblue"

    Text {
        anchors.centerIn: parent
        text: "Hello"
    }
}
于 2013-04-17T20:16:23.790 回答