{Qt5.0. 2/QML/QtQuick2. 0 / C++} przykładowe projekty, które działają bez błędów? [zamknięte]
Moja konfiguracja to Qt5.0.2 MinGW 32-bit.
Szukam { Qt5.0.2 / QML / QtQuick2.0 / C++ }
przykładów projektów kodu (nie Qt Quick 1.0
), które mają rzeczywiste klasy C++ lub przynajmniej main.cpp
.
Pobiegłem po sieci, przejrzałem wszystkie przykłady, które mogłem znaleźć:
- http://qt-project.org / Strona WWW;
- github;
- stack overflow (jeśli ktoś wcześniej zajął się tym pytaniem);
- http://www.developer.nokia.com/Develop/Qt/Code_examples /
Ale były albo stare ( Qt Quick 1.0) albo czyste QML+ QtQuick 2.0 albo w ogóle nie kompilowały; lub jeśli mogły kompilować, pokazywały mi puste okna dialogowe (na przykład "Status Shout! " w przykładach kodu Nokii).
Każda rada byłaby bardzo mile widziana.2 answers
W QML nie ma zbyt wielu szczegółowych zasobów, większość z nich to krótkie przykłady fragmentów i przykłady dokumentacji. Jest to problem dla ludzi, którzy są nowi w programowaniu, ponieważ takie materiały tak naprawdę nie dają pojęcia, jak ułożyć coś, co jest przydatne w praktyce.
Jest to prawdą tym bardziej dla QtQuick2, który jest zupełnie nowy, a nawet dokumentacja i wiele oficjalnych przykładów są nadal niekompletne. I wiem z zobacz, jak frustrujące jest podążanie za samouczkiem, wpisywanie wszystkiego, oczekiwanie, że zadziała i otrzymanie czegoś nieoczekiwanego, bez pojęcia, co naprawdę poszło nie tak i jak to naprawić.
Biorąc to pod uwagę, Istnieje kilka przykładów kompletnych, choć trywialnych gier, które są zaimplementowane w QtQuick1. Nie jest to zbyt duży problem, ponieważ elementy QtQuick2 są kompatybilne wstecz, a kod będzie działał z QtQuick2 z niewielkimi modyfikacjami lub bez nich w ogóle.
Oficjalne przykłady, choć czasami łamane lub niekompletne, również mogą być pomocne, plus prawdopodobnie zostaną naprawione wkrótce (najwyższy czas):
Ostatnie, ale nie mniej ważne, fragmenty QML ze strony projektu QT wiki:
EDIT: aby dodać kolejny dobry zasób do nauki QML: http://qmlbook.org
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-02-21 01:58:50
Raczej minimalnym przykładem może być:
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 (tutaj dołączony jako zasób):
import QtQuick 2.0
Rectangle {
color: "lightsteelblue"
Text {
anchors.centerIn: parent
text: "Hello"
}
}
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-04-17 20:16:23