在应用程序内分发空地文件

Jac*_*rby 3 gtk3 gtkmm3

在开始之前,我知道 的存在GResource,但是我正在使用 gtkmm (C++),并且我不确定 GResource 是否适用于 C++。我找不到任何东西Glib::GResource,我已经找了一段时间了。

无论如何,我正在使用 Gtkmm 编写一个 GUI,并且我想打包在可执行文件中加载的 .glade 文件,以便可执行文件可以运行,而无需在其旁边有文件。我不确定我是否完全理解 GResources 是如何工作的,而且我在任何地方都找不到任何明确的说明。

那么,使用 Gtkmm,我如何将 .glade 文件打包到可执行文件中?

更新:我发现了这个。(Gio::Resource),听起来很有希望,但没有文档。

Ale*_*iev 5

我做了更多研究并找到了本教程本文档。看起来你需要的是Gio::Resource::lookup_data_global。以下是C我的答案的版本。


当 glib 世界中的某些内容缺乏文档时,是时候阅读c的文档了。简而言之:借助glib-compile-resources和一个简单的 xml 文件,您可以构建一个.c文件,该文件可以编译到您的应用程序中。之后您可以使用g_resources_lookup_dataresourceS,这很重要)来加载数据。