如何快速获取当前在屏幕上的所有窗口的列表?
我怎样才能获得的所有窗口的列表,当前在屏幕上,在
?(所有示例均以开头import Cocoa
)
在 我可以成功运行以下代码:
CFArrayRef windowList = CGWindowListCopyWindowInfo(kCGWindowListOptionOnScreenOnly, kCGNullWindowID);
但是当我 运行等效项时(使用操场进行测试):
let windowList = CGWindowListCopyWindowInfo(kCGWindowListOptionOnScreenOnly, kcGNullWindowID)
我收到一个错误消息,告诉我我有一个Use of unresolved identifier 'kcGNullWindowID'
。
在石英文档的帮助下玩了一段时间之后,我开始:
let windowList = CGWindowListCopyWindowInfo(CGWindowListOption(kCGWindowListOptionOnScreenOnly), CGWindowListOption(0))
但是它仍然无法正常工作,因为我正在接收一个{__NSArrayM}
我不知道如何访问的对象。
我是在正确的道路上还是在做根本上错误的事情?
回答:
这是Swift 2.0中的示例,还演示了多个选项。
let options = CGWindowListOption(arrayLiteral: CGWindowListOption.ExcludeDesktopElements, CGWindowListOption.OptionOnScreenOnly) let windowListInfo = CGWindowListCopyWindowInfo(options, CGWindowID(0))
let infoList = windowListInfo as NSArray? as? [[String: AnyObject]]
以上是 如何快速获取当前在屏幕上的所有窗口的列表? 的全部内容, 来源链接: utcz.com/qa/423857.html