在GTK中,如何获取小部件在屏幕上的实际大小?

10 投票
1 回答
7245 浏览
提问于 2025-04-15 13:24

首先,我查看了 get_size_request 这个方法。文档最后提到:

要获取一个控件实际使用的大小,请调用 size_request(),而不是这个方法。

接着,我又看了 size_request(),它的结尾是:

还要记住,大小请求不一定是控件实际会被分配的大小。

那么,GTK中有没有什么方法可以获取一个控件实际的大小呢?这个控件是已经在屏幕上显示出来的,所以GTK肯定在某个地方有这个信息。

1 个回答

14

这就是答案(我花了一些时间才找到):

get_allocation() 方法会返回一个 gtk.gdk.Rectangle,这个矩形包含了小部件的分配范围。

来源于 这里

撰写回答