是否有可能找出当前关注的应用程序/窗口/框架?它可能是我可以编程的shell命令或库。
答案 0 :(得分:2)
现代窗口管理器在根窗口上设置_NET_ACTIVE_WINDOW
属性。请参阅问题How to know which window has focus and how to change it?
答案 1 :(得分:0)
在低级别,可以通过xlib调用从X服务器提取此信息。在更高级别,窗口管理器有时会实现必须通信焦点的可访问性协议,并且在任何情况下,它们相应的工具包都将具有更高级别的抽象。
辅助功能的一个例子是atk和at-spi。提供窗口管理功能的库将是很好的示例,请参阅:XEmbed。检查Qt和Gnome文档,了解处理焦点的C ++ API元素。
答案 2 :(得分:0)
快速前往Google建议XGetInputFocus
。有一个很好的示例程序链接here