是否有办法在有多个桌面时获取Mac OS X中活动桌面的ID。我没有找到一种方法或API。如何获取Mac OS X活动桌面的ID?
回答
使用HIWindowGetCGWindowID
为您的WindowRef
获取CGWindowID
。
使用该ID与CGWindowListCreateDescriptionFromArray
从CGWindow.h
获得有关您的窗口的信息。
查看返回的字典并提取(可选)kCGWindowWorkspace
密钥。
这是您窗口的空间ID。
来源:How to detect which Space the user is on in Mac OS X Leopard?
谢谢。我试过这个' - (int)spaceNumber CFArrayRef windowsInSpace = CGWindowListCopyWindowInfo(kCGWindowListOptionAll | kCGWindowListOptionOnScreenOnly,kCGNullWindowID); (NSMutableDictionary * thisWindow in(NSArray *)windowsInSpace){ if([thisWindow objectForKey:(id)kCGWindowWorkspace]){0} } } return -1; '但它不起作用。它总是返回-1。也许是因为在Mac OS X 10.8中不推荐使用“kCGWindowWorkspace”? – user2212391 2013-03-26 17:47:03
@ user2212391:有没有像过时的警告? – 2013-03-27 00:18:20
是的,有一个警告,但有时不赞成apis仍然工作。但在这种情况下,它似乎不再工作。是否有另一种方式来获得工作区ID? – user2212391 2013-03-27 10:18:20
如果你把在~/Library/Preferences/com.apple.spaces.plist
似乎包含由它们的窗口号组织空间及其窗口的列表看看。每个空间都有一个名称(最初的两个似乎是仪表板和空字符串,我认为它是第一个默认桌面)。如果你可以得到一个窗口号的引用,你可以尝试在这个plist结构中找到它,以确定它当前在哪个空间。这可能对你没有用,这取决于你对这些信息的处理方式。
- 1. 获取MAC OS X的机器ID
- 2. 在Mac OS X的桌面上绘图
- 3. 刷新mac os桌面图标x
- 4. 如何从Mac OS X上的用户名获取帐户ID?
- 5. 如何获取Mac桌面大小
- 6. mac os x连接活动目录
- 7. 获取Mac OS X上的eclipse版本
- 8. 获取ANDROID_LINT_COMPLETE_REGIONS在Mac OS X上运行
- 9. Mac OS X - 获取空格键状态
- 10. 如何登录Python程序活动在Mac OS X
- 11. 如何通过Python获取Mac中的桌面分辨率?
- 12. 在Mac OS X中获取当前活动窗口/文档的标题
- 13. 如何在Mac OS X中获取存储设备的图标?
- 14. 在苹果脚本中淡出桌面壁纸(Mac OS X)
- 15. 在Mac OS X中显示桌面/隐藏所有窗口
- 16. Mac OS X - 从桌面GUI运行shell脚本
- 17. Mac OS X优胜美地默认桌面混合模式?
- 18. Mac OS X - 如何制作与Mac OS中的iPhone类似的页面控件?
- 19. Mac OS X 10.6 ODBC驱动
- 20. 如何使用python在Mac OS X中获取环境变量?
- 21. 如何在Mac OS X中获取字体文件夹路径?
- 22. 如何在Mac OS X 64位上获取默认音量?
- 23. 如何获得在MAC OS X上运行的KeePass 2.X
- 24. 如何在Mac OS X中激活终端中的Anaconda环境?
- 25. 如何通过OS X中的命令行获取活动用户的名称?
- 26. Mac OS上的桌面应用程序自动化
- 27. 如何在Mac OS X 10.6上编译Mac OS X 10.5的python扩展?
- 28. 如何将Mac OS X 10.6.6更新添加到我的Mac OS X 10.6.3中dmg
- 29. 如何获取桌面窗口句柄?
- 30. 如何枚举Mac OS X上的卷?
活动桌面意味着什么? – 2013-03-26 16:32:35
您是否在谈论OS X中的Spaces功能?使用适当的术语通常有助于技术.... – Jay 2013-03-26 17:38:24
是的我正在谈论OS X中的空间功能。 – user2212391 2013-03-26 17:48:51