我想知道是否有一种方法可以可靠地检索所有空间中所有打开的有效窗口?
我现在遇到的问题是,在像Microsoft Word for Mac这样的程序上,有很多子窗口,导致我的列表被没有标题的空白窗口弄得一团糟,或者窗口只是没有导向任何地方。例如,对于Word,当我只打开一个文档时,我得到了这3个窗口:
- 文档1 Microsoft Word
- 桌面
都是来自Microsoft Word, Excel和Powerpoint也是如此,这个问题似乎是Microsoft Office套件所独有的。有什么办法来处理没有任何东西的窗户吗?
您可以尝试与可访问性相关联(您现在没有提到如何获得窗口列表),或者只是使用一些启发式方法(忽略没有标题,没有工作区编号的窗口,查看窗口标记位,等等)。打开Quartz Debug中的窗口列表,四处浏览,你会看到一些不同之处。如果窗口是可见的,你也可以按住Control-Option与Quartz Debug在后台得到一个弹出的HUD与一些更详细的信息的窗口下面的光标。
如果你真的很绝望,你可以抓取窗口内容,看看它们是透明的还是白色的。