如何解决我在哪里可以找到 Gtkmm 的好文档?
似乎很难找到关于 Gtkmm 主题的高质量文档。
Gtkmm 有没有好的文档?如果是这样,我在哪里可以找到它?
解决方法
文档肯定不是 Gtkmm 的强项。此外,Gtkmm API 从一个版本到另一个版本发生了很多变化,其中一些不向后兼容。但是,有一些信息来源值得了解。
Gtkmm 编程书
可用 here。
正如网页所解释的:
本书解释了用于创建用户界面的 gtkmm C++ API 的关键概念。它还介绍了主要的用户界面元素(“小部件”)。
所以这是一个有趣的介绍。此外,上面提供的链接提供了该书的许多副本。因此,您可以为 Gtkmm 2.20.1 版和 4.0.1 版(以及其他版本)阅读它。这可能非常有用。
Gtkmm 参考手册
可用 here。
正如网页所解释的:
gtkmm 是流行的 GUI 库 GTK+ 的官方 C++ 接口。亮点包括类型安全回调,以及一组可通过继承轻松扩展的综合小部件。
这是 Gtkmm API 文档。它基本上看起来像 Gtkmm 的 Doxygen 文档。它可能非常有用,但通常不完整。与 Programming with Gtkmm 页面一样,它提供了许多版本的 API 文档。这在您遇到 API 兼容性问题时非常很有用(例如,新版本中似乎不再存在某个方法)。不要忽略“相关页面”页面,快速浏览特定版本的新内容会很有趣。
该文档也可离线使用,使用 DevHelp。有关如何安装它,请参阅 this SO answer。但请注意,离线版本提供单一版本(您无法跨版本浏览)。
Gtkmm 演示
可用 here。
如存储库中所述:
这些是随 gtk+ 分发的 C 演示的 C++ 版本。 你可能会发现它们更容易理解,因为 C++ 允许更清晰的组织和代码重用。 gtk-demo 包含多个功能和 API 的演示,它们是 gtk+3.0 中的新功能,它显示了它正在运行的演示的源代码。
这些是官方 Gtkmm 存储库中提供的 Gtkmm 示例。它们可以下载、编译和播放,非常酷。此外,这些演示会得到维护,这意味着它们会随着 Gtkmm 版本而发展。这非常很有用,因为您可以及时返回存储库并使用不同的 API 版本。由于我需要使用较旧的 API 版本并发现当前的 API 完全不同,因此这为我节省了几次。
如果你不想编译它们并且你已经安装了 Gtkmm,你也可以运行
gtk3-demo
Gtkmm 邮件列表
可用 here。
这个邮件列表是关于 gtkmm 的使用和开发的 C++ 绑定到 GTK+
我在那里也找到了一些特定问题的答案。但是,直接使用它是相当困难的,因为其中没有任何内容可以帮助搜索特定主题。我找到的大多数答案都是 Google 搜索的结果,指向邮件列表的某些元素。
GTK 文档
Gtkmm 本质上是 GTK+ (GTK) 的 C++ 包装器。这意味着 GTK+ documentation 也很有用。例如,我经常使用 Widget Gallery for Gtk3 和 Widget Gallery for Gtk4 来查看可用的小部件及其外观。
并不是说 PyGTK 等其他一些包装器也有帮助。然而,根据我的经验,它们不如 Gtk+ 文档有趣。
非官方文档
其他一些网络资源也很有用。这是一个快速列表:
- Gnome wiki Gtkmm project page :一些其他地方没有的随机资源。例如,有一篇关于如何在 CMake 中使用 Gtkmm 的文章。
- Philippe Licidarme Gtkmm tutorial examples :很多简洁的例子。也可以下载所有源代码。
- Gedit 和 Inkscape 存储库:这是两个分别使用 GTK 和 Gtkmm 的成功软件。即使 Gedit 存储库是用 GTK 编写的,我也将其放在首位,因为正是在这个存储库中我找到了最多的答案。
- The Michal B. GTK playlist :一套 YouTube 视频,展示了很多好东西。 Gtkmm 本身没有,但非常接近 (GTK)。
- 有点过时,但来自 Hunter College 的 Stuart Weiss 教授有 really nice lecture notes 关于 GTK+ 的主题。这些注释有很多细节,我们在官方文档中确实需要这些细节,但遗憾的是几乎找不到。
- GTK 3 Programming with C and Glade (GTK) - 由 Lecrapouille 提供。
- Linux Gtk Glade Programming (GTK) - 由 Lecrapouille 提供。
- 遵循 SO 上的
gtkmm
和gtkmm
标签,以及gtk
和gtk3
标签。
这里有一些 youtube 播放列表:
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。