2013-04-17 1 views
13

Моя установка Qt5.0.2 MinGW 32-bit.{Qt5.0.2/QML/QtQuick2.0/C++} Примеры Проекты, которые запускаются без ошибок?

Я ищу { Qt5.0.2/QML/QtQuick2.0/C++ } примеры кода проекта (не Qt Quick 1.0), которые имеют действительные классы C++ или не менее main.cpp.

Я побежал через Интернет, просматривать все примеры я мог бы найти:

, но они были либо старые (Qt Quick 1,0) или чистый QML + QtQuick 2,0 или не компилировать на всех; или если они могут скомпилировать, они показали мне пустые диалоги (например, «Status Shout!» в примерах кода Nokia).

Любой совет будет высоко оценен.

+0

Я проверил некоторые из примеров, и некоторые из них работают. Не все, но Qt немного медленнее в этом отношении, и документация, и примеры на QtQuick2 все еще неполны. Имейте в виду, что QuQuick1 почти полностью совместим с QtQuick2, поэтому старые ресурсы отлично подходят для обучения. – dtech

+0

Не могли бы вы рекомендовать примеры, которые вы нашли полезными? Мне нужен полный проект, который устанавливает и получает свойства и данные из QML, надеюсь, что-то совместимое с Qt Quick 2.0. – iviv

+0

Кстати, эти примеры кода от nokia для symbian, они требуют разных компонентов, поэтому неудивительно, что они не работают для вас. – dtech

ответ

15

Есть на самом деле не так уж и много подробные ресурсы на QML, большая часть доступных - это просто примеры коротких фрагментов и примеры документации. Это проблема для людей, которые новичок в программировании, потому что такие материалы на самом деле не дают представления о том, как собрать что-то полезное на практике.

Это действительно так для QtQuick2, который является совершенно новым, и даже документация и многие официальные примеры все еще неполны. И я знаю по опыту, что разочарование заключается в том, чтобы следовать учебному курсу, набирать все, ожидать, что он работает, и получить что-то неожиданное, не зная, что действительно пошло не так, и как его исправить.

Это, как говорится, есть несколько примеров полных, хотя и тривиальных игр, которые реализованы в QtQuick1. Это не так уж и важно, поскольку элементы QtQuick2 обратно совместимы, и код будет работать с QtQuick2 практически без изменений.

Официальные примеры, иногда сломанные или неполной, также может помочь, и они, вероятно, будут исправлены в ближайшее время (речь идет о времени):

Последнее, но не менее важное: фрагменты QML с сайта проекта Qt wiki:

EDIT: Для того, чтобы добавить еще один хороший ресурс для изучения QML: http://qmlbook.org

+0

Увы, до сих пор нет полного проекта с файлами, которые я просматриваю. Но из того, что я получаю здесь в качестве ответов, кажется, что на самом деле нет примеров проектов, соответствующих моему вопросу {Qt5.0.2/QML/QtQuick2.0/C++} (не .JS-код!) С настройкой и получением свойства – iviv

2

Довольно минимальный пример был бы:

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" 
    } 
} 
+1

OP сказал, что он ищет примеры проектов, а не мир привет ... – dtech

+0

Может ли эта часть 'QQuickView view; view.resize (800, 480); view.setResizeMode (QQuickView :: SizeRootObjectToView); view.setSource (QUrl ("qrc: ///foo.qml")); view.show(); ' переместить в класс за пределами main.cpp? Я попробовал ваш пример минималистического кода, но когда я переместил его в класс «Диалог» (наследует QObject) и вызвал его в своем конструкторе, диалог вообще не отображается (или появляется и сразу исчезает, я не могу точно сказать/нет появляются ошибки). – iviv

+1

ddriver: Мне нужен запрос, который фактически компилирует/показывает что-то –

 Смежные вопросы

  • Нет связанных вопросов^_^