gpt4 book ai didi

xml - 使 gtk 小部件填充父窗口

转载 作者:数据小太阳 更新时间:2023-10-29 02:47:50 26 4
gpt4 key购买 nike

我是 gtk 编程的新手(但对 python 有经验)。我有一个带有按钮小部件子项的窗口。想让按钮完全填满窗口怎么办?

顺便说一句,使用 xml(fill-parent)这将非常容易,有没有类似于 xml 的 gtk 原生的东西?

提前致谢!

最佳答案

在不知道你现在的程序是什么的情况下,我只能给出一个大概的答案。有两种方法可以解释您的第一个问题;我会回答这两个问题。

GTK+ 中有两种类型的容器。第一个,bin,只有一个 child ,并且自动给那个 child 填充父级的整个大小。 GtkWindow、GtkScrolledWindow、GtkFrame 等都是 bin。如果您将小部件直接添加到 GtkWindow,就像在 Mohsen 的回答中一样,它应该填充容器。

第二种类型是布局容器。这些是 GtkBox 和 GtkGrid 之类的东西,可以让您将多个小部件打包到一个整洁的布局中。为此,GTK+ 为每个单独的小部件提供了四个小部件属性来设置:hexpandhalignvexpandvalignhv 确定属性适用于哪个维度(水平或垂直)。如果 expandTRUE,则在使用其首选大小 定位非扩展小部件后剩余的任何空间都会为小部件提供。如果 alignGTK_ALIGN_FILL,小部件将填充给定的空间。 This page应该更好地解释。

请注意,使用 GTK+ 时,小部件的大小由其父级指定,而不是相反。小部件可以请求给定的大小,但父级可以随意忽略它。 (GtkWindow 是一个不忽略大小请求的示例;通常它会自动调整自身大小以使其足够的内容可见,除非被明确覆盖)。

有一种基于 XML 的格式用于构建 GTK+ UI。它由 GtkBuilder 类型提供,Glade 生成这些文件,因此您不必自己编写 XML 格式。如果您确实想要手动编写您的 UI 文件,每个小部件的文档都会有一个部分“GtkXxx as GtkBuildable”,其中展示了如何编写 XML。

关于xml - 使 gtk 小部件填充父窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29985323/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com