免责声明:我知道有一个非常相似的 question关于这个话题。
我正在尝试获得与 NoozNooz42 描述的完全相同的结果 here .然而mdma答案不符合我的需要,因为我有兴趣在 linux 上做同样的事情。如果重要的话,最好使用 gnome。因此,将 JNA 与 user32 库一起使用在这里不是一个选项(或者是吗?)。
任何建议都很好,我几乎找不到关于该主题的任何内容。
附言 我发现的唯一一件事是 wmctrl 命令(我最终可以在 java 中调用和解析它)列出窗口但没有给我任何关于 z 顺序的信息。
更新: 如果我能在 z 顺序更改时收到通知/回调,那就太完美了。
最佳答案
使用 xprop,它显示窗口属性。 z 顺序的窗口列表位于根窗口的属性 _NET_CLIENT_LIST_STACKING
中:
xprop -root | grep '_NET_CLIENT_LIST_STACKING(WINDOW)'
输出应该是这样的:
_NET_CLIENT_LIST_STACKING(WINDOW): window id # 0x2000003, 0x4000004,
0x1c00004, 0x1c00030, 0x1c00033, 0x2e00004
稍后您可以获得有关特定窗口的更多信息:
xprop -id <id>
或
xwininfo -id <id>
关于java - Linux:如何获取所有可见窗口的列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15638885/