swift - 如何使用 Swift 获取其他应用程序的 WindowCount

标签 swift macos window

如何获取其他应用程序的当前 WindowCount? 我正在使用 Swift 作为编程语言并针对 OS X 进行开发。

祝你有美好的一天。

最佳答案

导入 CoreGraphics 并查看 CGWindowListCopyWindowInfo:

import CoreGraphics

let kCGNullWindowID: UInt32 = 0

// Check the documentation for other options
guard let windows = CGWindowListCopyWindowInfo([.OptionOnScreenOnly], kCGNullWindowID) as NSArray? as? [[String: AnyObject]] else {
    fatalError("Can't find windows")
}

var windowCount = [String: Int]()
windows.forEach {
    let ownerName = $0[kCGWindowOwnerName as String] as! String
    if let count = windowCount[ownerName] {
        windowCount[ownerName] = count + 1
    } else {
        windowCount[ownerName] = 1
    }
}

print(windowCount)

关于swift - 如何使用 Swift 获取其他应用程序的 WindowCount,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37996182/

相关文章:

ios - 在 AlamofireObjectMapper 响应中映射 allHeaderFields

wpf - WPF-设置对话框窗口相对于主窗口的位置?

dynamic - ExtJs 面板 - 添加动态组件

ios - SpriteKit - 标签在背景中的基本定位

ios - Swift - 当 uitableview 重用单元格时,用户输入会混淆吗?

Swift,在另一个泛型函数中调用泛型函数

编译器不会警告 C 数据或精度丢失

Swift:将击键转发到不同的进程

c++ - Mac 应用程序开发 : How to select app language while installing?

javascript - 如果 window.location.href 里面有 'sometext' - 这样做