Распространите файл glade внутри приложения
Прежде чем начать, я знаю о существовании GResource
Однако я использую gtkmm (C++), и я не уверен, работает ли GResource с C++. Я не могу ничего найти по линии Glib::GResource
и я долго искал
В любом случае, я пишу графический интерфейс с использованием Gtkmm и хочу упаковать файл.glade, который я загружаю в исполняемый файл, так что исполняемый файл может быть запущен без наличия файла рядом с ним. Я не уверен, что полностью понимаю, как работает GResources, и я не могу найти четких инструкций нигде.
Итак, используя Gtkmm, как мне упаковать файл.glade в мой исполняемый файл?
обновление: я нашел это. (Gio:: Resource), что звучит обнадеживающе, но без документации.
1 ответ
Я провел еще несколько исследований и нашел этот учебник и эту документацию. Похоже, что вам нужно Gio::Resource::lookup_data_global
, Ниже C
версия моего ответа.
Когда что-то в мире glib не хватает документации, пришло время прочитать документацию для c. Вкратце: с помощью glib-compile-resources и простого XML-файла вы создаете .c
файл, который можно скомпилировать в ваше приложение. После этого вы можете использовать g_resources_lookup_data
(resourceS, это важно) для загрузки данных.