Как правильно добавить ресурсы в приложение Qt
Я пытаюсь развернуть приложение Windows в Qt, поэтому я изменяю режим на релиз, но когда я его выполняю, все, что он пишет, это
file::/qml/Main.qml: File is empty
Я уже несколько раз пытался переделать resources.qrc, но безуспешно.
resources.qrc
<RCC>
<qresource prefix="/">
<file>qml/Pages/DetailPage.qml</file>
<file>qml/Pages/IntroPage.qml</file>
<file>qml/Pages/LibaryPage.qml</file>
<file>qml/Pages/Page.qml</file>
<file>qml/Pages/PageView.qml</file>
<file>qml/Controls/ControlSlider.qml</file>
<file>qml/Models/CityModel.qml</file>
<file>images/heatmapicon.png</file>
<file>qml/Main.qml</file>
</qresource>
</RCC>
Я попытался скопировать папку qml и images (они находятся в той же папке, что и main.cpp и resources.qrc), но безуспешно.
Вот как я устанавливаю основной источник для QQuickView
:
view_->setSource(QUrl::fromLocalFile(QStringLiteral(":/qml/Main.qml")));
В режиме отладки проблем нет и все запускается как надо.
Как я могу изменить ресурс / код, чтобы он работал?
Спасибо за вашу помощь!
//РЕДАКТИРОВАТЬ:
Мне удалось решить это с view_>setSource(QUrl(QStringLiteral("qrc:/qml/Main.qml")));
1 ответ
Вам не нужно использовать QUrl::fromLocalFile()
эта функция указывает, что вы ищете локальный файл, но пути, обрабатываемые.qrc, являются виртуальными.
Использование:
view_->setSource(QUrl(QStringLiteral("qrc:/qml/Main.qml")));