1
有没有办法找到X的最前面的窗口的ID和路径或类型(浏览器,...)?我如何检测X中最前面窗口的信息?
有没有办法找到X的最前面的窗口的ID和路径或类型(浏览器,...)?我如何检测X中最前面窗口的信息?
要找出窗口ID,请尝试:
xprop -root|grep "_NET_CLIENT_LIST_STACKING(WINDOW): window id"
_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的因为我没有它,我的系统上:我成功编译它。
我刚刚发现这个主题,它可能是一个有趣的阅读:http://stackoverflow.com/q/2041532/176769 – karlphillip 2011-05-17 20:08:05
已更新的答案。 – karlphillip 2011-05-17 20:17:58
有没有办法区分第一个“正常”的窗口(我不知道该怎么说,这意味着一个窗口不属于浏览器或其他应用程序。在mac中它是Finder的窗口) – thikonom 2011-05-17 20:34:50