2013-07-26 4 views
2

Я только начинаю узнавать о QResource. Насколько я понимаю, это всего лишь способ создать структуру «каталог/файл» в памяти.qt registerresource от необработанных данных

Я хочу, чтобы мое приложение создало ресурс (во время выполнения) из необработанных данных. Например. мое приложение может создать изображение, полученное в результате некоторых вычислений, и захочет сохранить его как ресурс для дальнейшего использования.

Я думал, что конструктор:

QResource::registerResource(const uchar * rccData, const QString & mapRoot = QString() 

должен был сделать это, но я, вероятно, что-то пропустил, как я ожидал size аргумент ...

что rccData тогда?

Насколько велика созданный ресурс?

Как создать ресурс из необработанных данных?

Заранее благодарим за ответы.

+0

С помощью QResource :: registerResource вы можете загрузить действительный файл .qrc. Этот файл будет создан компилятором ресурсов Qt. Это позволяет пользователю хранить ресурсы за пределами основного исполняемого файла. – bkausbk

ответ

2

QResource дает вам доступ к данным, хранящимся в файлах ресурсов .qrc. Эти файлы наследуют каталогическую структуру, к которой затем можно получить доступ через класс QResource. Эти файлы могут быть скомпилированы в приложение или могут быть загружены во время выполнения через QResource::QResource (const QString & file = QString(), const QLocale & locale = QLocale()). Эти загруженные файлы фактически отображают структуру каталогов в памяти, но QResource не предназначен для создания структуры каталогов из ничего.

+0

Итак, Qressource дает вам возможность загружать файлы в память, но не имеет возможности добавлять файлы непосредственно в память (без использования файловой системы ОС)? на что указывает rccData в указанной выше функции?/thanks – user1159290

+0

rccData указывает на файл .rcc, загруженный в память, так как '' registerResource (QString, QString) '' считывает данный файл с диска и загружает его. По крайней мере, это то, что я читал из документов. Эти файлы создаются с помощью RCC Tool с помощью -binary switch. –

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