gpt4 book ai didi

linux - 如何在 Linux 中获取窗口组件的位置?

转载 作者:太空狗 更新时间:2023-10-29 12:15:20 24 4
gpt4 key购买 nike

在 Linux 中,可以使用 xwininfo 获取窗口的位置。是否有可能获得它的组件的位置,例如浏览器的内容区域,窗口的按钮? xwininfo-children选项只能获取子窗口的位置,不能获取组件。

最佳答案

我的理解是现代工具包(如 GTK+、Qt)不一定必须支持每个组件都带有 X11 窗口,但我发现很难找到这种说法的确切来源。如果组件或 widgets 不受 X11 windows 支持,xwininfo 将无法确定它们的位置。

例如,GTK+ 曾经将环境变量 GDK_NATIVE_WINDOWS 解释为表示每个 GdkWindow (corresponding to every widget) 都应该有一个 native 窗口,但这只是为了与某些无法运行的应用程序兼容否则。此功能已被删除(https://mail.gnome.org/archives/commits-list/2011-March/msg03590.html)。 Gtk+/Gdk 现在有 gtk_ensure_native_window() , 但如果程序员没有明确启用,Gdk 似乎不会支持 X11 窗口的小部件,因此 xwininfo 将无法获取这些小部件的位置。

不过,似乎有针对特定工具包的替代方案。例如,GTK+ 有 gtkparasite这可能会为您提供有关特定组件的信息,但这仅适用于 GTK+ 应用程序。

关于linux - 如何在 Linux 中获取窗口组件的位置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27127349/

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