XML文档如何与GTK一起创建用户界面?

Jul*_*itt 5 c xml gtk

我现在正在开发一个 C/GTK+3 项目。我对前端有一点经验,但主要只在 Android 方面。即便如此,那也是非常少的经验。

我注意到在 C 代码中我放置了对象并设置了属性(例如文本视图是否可编辑等)。我还能够使用构建器函数将 .ui XML 文件连接到我的程序。

我想知道 XML 文件如何链接到定义接口的 C 代码。它是否按结构、名称或 ID 属性匹配?为什么 C 代码和 XML 中都存在“可见”和“可编辑”等属性?您需要 XML 文件吗?您是否需要在 XML 文件和 C 代码中指定属性,还是只指定其中之一?我能完全理解前端开发吗?

lib*_*rce 6

构建用户界面有两种方法:

  1. 你为它编写代码。
  2. 您编写一个描述用户界面的文件,并在运行时为您构建用户界面。

如果您自己编写代码,则每次想要移动小部件时,都必须修改代码,并需要对其进行编译。这对于小型 UI 来说是可行的,并且是大多数教程中所做的。

如果您使用 ui 文件,那么您可以使用Glade应用程序以图形方式设计您的 UI,它会为您编写 UI 文件。这也有助于划分责任:您可以让设计人员负责 UI,并让开发人员专注于行为。即使没有这些,您也可以使用 Glade 这样的编辑器比手动编码更快地设计 UI。认为您跳过了所有编译/调试周期。

在您的 ui 文件中,如果您将 wigdet 命名为“bob”,则可以通过将其名称传递给gtk_builder_get_object. GtkBuilder负责构建和内存,因此如果您需要再次显示它们,请不要破坏它创建的小部件,而是隐藏它们。

GTK 文档中提供了 UI 文件的使用示例: https://developer.gnome.org/gtk3/stable/ch01s04.html#id-1.2.3.12.5