2011-05-17 45 views

回答

1

要找出窗口ID,请尝试:

xprop -root|grep "_NET_CLIENT_LIST_STACKING(WINDOW): window id" 

Window properties

_NET_CLIENT_LIST_STACKING具有底部到顶部堆叠顺序来完成,这是

的一种方式在应用程序中解析此命令的输出。最上面的窗口是列表中的最后一个。

编辑:

如果您需要从窗口ID检索进程ID,有一个小的应用程序here显示了如何做这一招。

g++ win_procid.cpp -o win_procid -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/libgtop-2.0 -lXtst -lgtop-2.0

我不得不安装包libgtop2-dev的因为我没有它,我的系统上:我成功编译它。

+0

我刚刚发现这个主题,它可能是一个有趣的阅读:http://stackoverflow.com/q/2041532/176769 – karlphillip 2011-05-17 20:08:05

+0

已更新的答案。 – karlphillip 2011-05-17 20:17:58

+0

有没有办法区分第一个“正常”的窗口(我不知道该怎么说,这意味着一个窗口不属于浏览器或其他应用程序。在mac中它是Finder的窗口) – thikonom 2011-05-17 20:34:50