当前位置: 首页 > 面试题库 >

如何快速获取当前在屏幕上的所有窗口的列表?

濮阳俊明
2023-03-14
问题内容

我怎样才能获得的所有窗口的列表,当前在屏幕上,在 迅速
?(所有示例均以开头import Cocoa

Objective-C中, 我可以成功运行以下代码:

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]]


 类似资料:
  • 问题内容: 我有一个名为overView的UIView: 我只想截取此视图的屏幕截图,而不是整个屏幕。并制作尺寸截图: 这是我的代码: 屏幕截图具有所需的大小,但是它需要整个视图的屏幕截图,而不仅仅是“ overView”。 问题答案: 要绘制一个视图,只需使用以下命令: 如果您想多次使用它,可能扩展可以完成这项工作: // Swift4 //旧的Swift 要解释这些参数的作用: UIGraph

  • 问题内容: 我怎样才能得到将在所有主要浏览器工作? 问题答案: 这包含你需要了解的所有信息:获取视口/窗口大小 简而言之: Fiddle 请停止编辑此答案。根据不同的代码格式偏好,现在已对其进行了22次编辑。还指出了,如果你只想定位现代浏览器,则不需要这样做-如果是这样,则只需要以下内容:

  • 问题内容: 我在AWT中看到了一种方法:。在JavaFx中,是否有任何方法可以获取所有窗口的JavaFx应用程序? 谢谢, 问题答案: AFAIK,仍然没有适当的方法来执行此操作。 尽管有一种 肮脏的短期 方法: 浏览的源代码,有一个静态方法似乎可以满足您的期望:。 但是有很多免责声明:

  • 问题内容: 有谁知道如何使用Java获取当前打开的窗口或本地计算机的进程? 我想做的是:像Windows Taskmanager一样列出当前打开的任务,窗口或打开的进程,但要使用多平台方法-如果可能,仅使用Java。 问题答案: 这是从命令 解析进程列表的另一种方法: 如果你使用的是Windows,则应更改以下行:等(第三行),如下所示: 希望该信息对你有所帮助!

  • 问题内容: 例如,当我想设置在 谢谢。 问题答案: 检查这其他的选择。

  • 问题内容: 我已经看到了很多人从一个模块中提取所有类的示例,通常是这样的: 太棒了 但是我无法找到如何从 当前 模块中获取所有类。 这可能确实很明显,但是我什么也找不到。谁能帮我吗? 问题答案: 尝试这个: 在您的情况下: 甚至更好: 因为带谓语。