Ich habe eine Qt Quick Desktop-Anwendung in C++ Qnd Qt Creator (QML) auf Windows7 geschrieben. Jetzt Ich muss es bereitstellen, und ich muss die qml-Dateien und die Bilder verstecken (bedeutet: um sie in Ressourcen und etc.)Wie verwende ich qrc in C++ und QML-Anwendung?
Ich habe gelesen, dass es eine gute Möglichkeit ist, das zu tun. qrc-Dateien. Ich lese die Dokumentation über diese Dateien und erstellt eine für meine Anwendung, die wie folgt aussieht:
<RCC>
<qresource prefix="/">
<file>qml/GenericHostApplicationQML/myMain.qml</file>
<file>qml/GenericHostApplicationQML/content/PressAndHoldButton.qml</file>
<file>qml/GenericHostApplicationQML/content/TextButton.qml</file>
<file>qml/GenericHostApplicationQML/content/pics/advancedsettings.png</file>
<file>qml/GenericHostApplicationQML/content/pics/cnruninstall.png</file>
<file>qml/GenericHostApplicationQML/content/pics/dialog_cancel.png</file>
<file>qml/GenericHostApplicationQML/content/pics/folder_explore.png</file>
<file>qml/GenericHostApplicationQML/content/pics/gnome_session_switch.png</file>
<file>qml/GenericHostApplicationQML/content/pics/mail2_send.png</file>
<file>qml/GenericHostApplicationQML/content/pics/Picture1.png</file>
<file>qml/GenericHostApplicationQML/content/pics/Picture2.png</file>
</qresource>
Im main.cpp, ich lade die Main.qml Datei wie:
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
QDeclarativeView view;
view.setSource(QUrl::fromLocalFile("qml/GenericHostApplicationQML/myMain.qml"));
view.show();
return app.exec();
}
ich versuchte, die myMain.qml Datei aus dem Resources.qrc zu lesen wie:
view.setSource(QUrl(":/qml/GenericHostApplicationQML/myMain.qml"));//I added the ":/"
aber ich habe diesen Fehler bekam:
file:///qml/GenericHostApplicationQML/myMain.qml: File not found
und als ich dieses versucht:
Ich erhalte dieses:
file:///C:/Users/ayalafre/Desktop/ghaQML/GenericHostApplicationQML-build-desktop-Qt_4_7_4_for_Desktop_-_MinGW_4_4__Qt_SDK__Release/:/qml/GenericHostApplicationQML/myMain.qml: File not found
Es scheint, wie meine Qt nicht weiß, was zu tun : ": /"
Ich habe in der .qrc-Datei verwenden:
- Laden der Datei myMain.qml
- Import Mit Dateien auf QML in myMain.qml
- Bilder Mit meiner qml Dateien
Können Sie mir erklären, was los ist ?? und was muss ich tun, um die .qrc in C++ und Qml zu verwenden?
Vielen Dank :)
Ich bin mir ziemlich sicher, dass es keine Möglichkeit gibt, QML-Code wirklich zu verbergen, selbst wenn Sie die Ressourcendatei verwenden, ist dieser Code für anyo immer noch sichtbar ne, die Ihre ausführbare Datei prüft, d. h. sie wird nicht kompiliert, verschlüsselt oder in Binärcode umgewandelt. – johnbakers