如何在Linux中获取准确的窗口信息(尺寸等)?

1 投票
1 回答
2630 浏览
提问于 2025-04-16 01:12

我想在Linux系统中获取准确的窗口信息。我知道可以使用 wmctrl 来获取窗口的大小,但实际上窗口的大小可能会因为窗口装饰(比如边框和标题栏)而有所不同。我需要以下信息和方法:

  • 准确的窗口尺寸
  • 准确的可用屏幕空间(不包括像 gnome-panel 这样的面板)
  • 能够设置窗口为特定大小,包括装饰部分

有什么好的方法可以做到这一点吗?我对使用Python很感兴趣,所以如果有Python模块的相关内容就更好了。

提前谢谢大家!

1 个回答

2

最好的方法是直接使用 X11/xlib(文档链接:http://tronche.com/gui/x/xlib/)。

从根节点开始,你可以通过 XQueryTree() 来遍历一个树状结构,并通过 XGetWindowAttributes() 或 XGetGeometry() 来获取窗口的属性。

好吧,这个是 C 语言的库,但也有 Python 的版本:http://python-xlib.sourceforge.net/?page=documentation

撰写回答