Моя установка Qt5.0.2 MinGW 32-bit.
я ищу { Qt5.0.2 / QML / QtQuick2.0 / C++ }
примеры кода проекта (не Qt Quick 1.0
) которые имеют реальные классы C ++ или, по крайней мере, main.cpp
,
Я бегал по сети, просматривал все примеры, которые мог найти:
но они были либо старые (Qt Quick 1.0) или чистый QML + QtQuick 2.0 или не компилируется вообще; или, если они могли скомпилировать, они показали мне пустые диалоги (например, «Статус Крик!«в примерах кода Nokia).
Любой совет будет высоко оценен.
На самом деле не так много подробных ресурсов по QML, большая часть того, что доступно, — это просто короткие фрагменты примеров и примеры документации. Это проблема для людей, которые плохо знакомы с программированием, потому что такие материалы не дают представления о том, как собрать что-то полезное на практике.
Это верно даже в большей степени для QtQuick2, который является совершенно новым, и даже документация и многие официальные примеры все еще не завершены. И я по своему опыту знаю, как сложно следовать учебному пособию, вводить все, ожидать, что оно сработает, и получить что-то неожиданное, не зная, что на самом деле пошло не так и как это исправить.
Тем не менее, есть несколько примеров законченных, хотя и тривиальных игр, которые реализованы в QtQuick1. Это не такая уж большая проблема, поскольку элементы QtQuick2 обратно совместимы, и код будет работать с QtQuick2 практически без изменений.
Официальные примеры, хотя иногда и неполноценные или неполные, также могут помочь, плюс они, скорее всего, будут исправлены в ближайшее время (пора):
И последнее, но не менее важное: фрагменты QML на вики-сайте проекта Qt:
РЕДАКТИРОВАТЬ: Чтобы добавить еще один хороший ресурс для изучения QML: http://qmlbook.org
Довольно минимальным примером будет:
main.cpp
#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"}
}