【问题标题】:How to embed `.ui` file on a binary gtk application?如何在二进制 gtk 应用程序中嵌入“.ui”文件?
【发布时间】:2014-12-10 02:14:35
【问题描述】:

我正在开发一个 GTK 应用程序,该应用程序从相对路径加载 .ui 文件,但编译的二进制文件稍后无法找到接口文件。

处理.ui文件的常用方法是什么?有没有办法在二进制分发中“嵌入”.ui 文件?

【问题讨论】:

  • GTK+ 文档中关于它的一些内容:developer.gnome.org/gtk3/stable/ch01s04.html
  • 这并没有真正谈论上述.ui 文件的分布,这就是这个人要问的。不幸的是,除了将 .ui 文件推入 /usr/share... 之外,该教程并没有真正讨论分发方法
  • @andlabs 确切地说,我需要一个独立的发行版,不想做一个包。
  • 该链接显示了如何重新编码以在程序中包含“.ui”文件,以及为什么它可能不是一个好主意,以及“.ui”通常存储在哪里系统。但是,如果您的问题是如何更改可执行文件(即二进制文件)以嵌入“.ui”,或更改“.ui”的位置......那么你是对的,该链接并没有告诉你怎么做那。而且我不确定你能做到。

标签: c gtk binaryfiles


【解决方案1】:

这取决于你,但我可以举出两种“标准”方式:

首先是要求您的.ui 文件在外部安装在/usr/share/[your program name here]/ 或类似的位置。这可能不是您想要做的(我个人不推荐这样做,但这只是我的意见......)。

另一种方法是使用GResource 文件。 GResource 是 GLib 的一部分,GTK+ 是在 GLib 之上构建的。您需要知道的所有内容都列在该页面的“说明”下。 (这是我更喜欢使用的方法,至少对于 C 和 Vala 项目;后者尤其是 GtkTemplate 属性可以透明地调用 GtkBuilder。)

【讨论】:

    猜你喜欢
    • 2020-01-06
    • 1970-01-01
    • 2011-06-03
    • 2010-10-29
    • 2016-08-11
    • 1970-01-01
    • 2010-10-27
    • 2012-12-27
    • 2019-02-21
    相关资源
    最近更新 更多