2016-09-22 2 views
1

Мой вопрос довольно прост. У меня есть приложение Qt с Gui, разработанное с QML. Моя задняя сторона создает и сохраняет jpg-изображения в папке с именем/изображениями. Я могу отправить из C++ в QML строки, содержащие имя изображений, которые я хочу показать. К сожалению, мой объект изображения QML ничего не отображает.Как загрузить изображения (jpg) в QML, сгенерированные во время выполнения

Похоже, что если изображение можно отобразить, только если оно было ранее объявлено в файле qml.qrc. К сожалению, файлы qrc еще не поддерживают подстановочные знаки! https://bugreports.qt.io/browse/QTBUG-1400

Есть ли обходной путь?
Название изображений не фиксировано, они генерируются с определенными значениями времени выполнения, т. Е. Меткой времени.

Спасибо

+0

Возможно, вам необходимо [QQuickImageProvider] (http://doc.qt.io/qt-5/qquickimageprovider.html) – folibis

+1

Нет, он просто необходимо загрузить с диска, а не RQC – dtech

+0

я, возможно, потребуется QQuickImageProvider, но это боль в заднице, поскольку в моем бэкенде я обрабатываю несколько изображений (сгенерированных во время выполнения) для каждой модели, подверженной QML. Использование QQuickImageProvider должно быть быстрее в любом случае .. вместо хранения и загрузки изображений. Завтра я сделаю снимок. thx – Spatz

ответ

3

По умолчанию он будет искать источник изображения в файле QRC. Чтобы перейти в фактическую файловую систему, добавьте file:/// к пути.

+0

да, он отлично работал с 'cache: false'. Я попробую выполнить эту реализацию, прежде чем переключиться на что-то еще. Thx – Spatz

+0

Кажется, что 'file: /' также работает. – dtech

+0

Поскольку имена файлов взяты из C++, просто используйте 'QUrl :: fromLocalFile()' и передайте полученный URL-адрес в QML –

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