检测 macOS 鼠标光标下的颜色

2023-11-28

我想知道如何获取 OS X / macOS 鼠标指针当前所在像素的颜色。

我编写了一个控制台应用程序,所以我没有可以覆盖的窗口或其他东西。

当我构建并运行该程序时,它应该为我提供鼠标指针当前所在颜色的控制台日志。那可能吗?


Using 这个问题和答案首先,这是一个功能齐全的命令行程序。

// To build and run, save this file as main.m, then:
//
//   clang -framework Foundation -framework Cocoa main.m
//   ./a.out

#import <Foundation/Foundation.h>
#import <Cocoa/Cocoa.h>

int main(int argc, const char *argv[]) {
  CGDirectDisplayID mainDisplayID = CGMainDisplayID();
  // NSLog(@"Main display id=%d", mainDisplayID);

  while (true) {
    @autoreleasepool {
      CGPoint cursor = CGEventGetLocation(CGEventCreate(NULL));
      // NSLog(@"Mouse pos: (%f, %f)", cursor.x, cursor.y);
      CGRect rect = CGRectMake(cursor.x, cursor.y, 1, 1);
      CGImageRef image = CGDisplayCreateImageForRect(mainDisplayID, rect);
      NSBitmapImageRep *bitmap = [[NSBitmapImageRep alloc] initWithCGImage:image];
      CGImageRelease(image);
      NSColor *color = [bitmap colorAtX:0 y:0];
      NSLog(@"%@", color);
      [bitmap release];
    }
  }
  return 0;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

检测 macOS 鼠标光标下的颜色 的相关文章

随机推荐

  • SpringTemplate 没有找到适合响应类型的 HttpMessageConverter

    我在使用 Spring Rest 模板时收到以下错误 但我已经为 json 响应定义了 jackson 当我使用其余客户端查询 url 时 我得到了很好的响应 org springframework web client RestClien
  • Python Tornado渲染静态目录

    我正在尝试使用 Python 中的 Tornado API 从静态目录提供页面 这个答案与我想做的类似 但我似乎无法让它发挥作用 我的目录结构如下所示 所有静态文件都位于名为的文件夹内web 我有一个像这样的网络服务器设置 class Ap
  • 录制音频并以 Wav 或 MP3 形式上传到服务器

    我不确定我问的地方是否正确 但基本上我正在寻找有关最佳方法的建议 通过网站上的麦克风录制音频并将音频以 Wav 或 MP3 文件上传到服务器 有没有人对闪光灯有丰富的经验 这会很难做到吗 目前市场上有什么可以做到这一点吗 我正在考虑将其实现
  • 如何为“日期”创建索引?

    如何为 日期 创建索引 CentOS7 MongoDB服务器版本 3 4 2 db animals createIndex date ok 0 errmsg The field key must be an object but got s
  • web组件shadow dom中的rem

    我们知道我们可以设置font size on html as the rem基于普通 DOM 节点 我使用这个技巧使我的应用程序的字体更加灵活 可以通过 js 动态更改 然而 当我创建一个Web组件时 我发现rem即使我尝试添加样式 影子
  • GWT-RPC 与 HTTP 调用 - 哪个更好?

    我正在评估使用 GWT RPC 进行的调用和HTTP调用 我的 appln 服务作为 Java servlet 托管 我当前使用 HTTPProxy 连接从它们获取数据 我希望将它们转换为 GWT RPC 调用 如果这能带来性能改进 我想知
  • 云端点收集参数

    我正在使用 Google App Engine Cloud Endpoints 并且正在尝试接收集合参数 不确定我是否能做到这一点 我知道我可以返回列表或任何集合 This public List
  • 选择悬停项目之前的所有项目

    我有一个带有 5 个内联星的容器 我需要的是当你将鼠标悬停在一颗星星上时 该星星和它之前的所有星星都会获得不同的背景 我使用的是精灵 所以我改变了背景位置 Markup div class wpr span class star span
  • Gson:直接将String转换为JsonObject(无POJO)

    似乎无法弄清楚这一点 我正在尝试在 GSON 中进行 JSON 树操作 但在转换为之前 我不知道或没有 POJO 来将字符串转换为JsonObject 有没有办法直接从String to JsonObject 我尝试过以下 Scala 语法
  • Android 从资源中获取颜色列表

    我有一个颜色列表
  • 是否可以修改 beforeSend 回调中的 XMLHttpRequest 数据?

    是否可以通过修改 beforeSend 回调中的 XMLHttpRequest 对象来修改 Ajax 请求中发送的数据 如果是的话我该怎么做 是的 你可以修改它 签名beforeSend is actually 在 jQuery 1 4 中
  • catch事务连接后的SqlTransaction为null

    我有一个循环 我用不同的参数值调用存储过程 下次通话cmd ExecuteNonQuery 我使用事务来保存全部或回滚 并使用 checkBox2 始终保存 我发现一个问题 但找不到解决方案 在第一个问题之后 当 catch 块被触发时 事
  • CSS 过渡和 jQuery 淡入淡出之间的冲突

    我正在尝试创建一个带有小菜单的瓷砖墙display none一些基于其类别的元素 在我的 CSS 中 我有 CSS 转换 这会导致fadeIn and fadeOut不工作 如果我添加一个时间 该元素将需要那么长时间才能消失 但实际上并没有
  • VB6 Timer 控件是否创建单独的线程?

    有VB6吗Timer控件启动时创建一个单独的处理线程 VB6 定时器控件不是某种在后台线程上运行的忙等待循环 他们根本就没有真正 跑 据我所知 当您设置 Enabled True 或更改 Interval 如果它是 0 时 控件会调用 Se
  • 这是导入驻留在任意文件夹中的 python 脚本的正确方法吗?

    此片段来自较早的答案 大约有一年了 答案没有被接受 我是 Python 新手 我发现系统路径真的很痛苦 我在不同目录中的脚本中编写了一些函数 我希望能够将它们导入到新项目中 而不必费力 这是片段 def import path fullpa
  • 针对 Mac OS X 10.8 之前的目标进行编译时,Base.lproj/MainMenu.xib 不可用

    我对 Cocoa 开发非常陌生 我刚刚创建了 Cocoa 项目Xcode 5 我变了部署目标从 10 8 到 10 6 现在我收到这个警告 path to my project Base lproj MainMenu xib 在以下情况下不
  • SpringMVC Websockets 使用 Spring Security 进行用户身份验证消息传递

    我看过一些关于这个问题的帖子 但似乎没有一个真正直接回答这个问题 背景 我安装了 spring security 工作正常 并且在应用程序的其他部分顺利运行 我的用户名是 开发者 在 Java 7 Glassfish 4 Spring 4
  • 为什么在 hibernate-core 6.0.2 中删除了对 javax.persistence-api 的依赖

    将 hibernate core 从 5 6 9 Final 更新到 6 0 2 Final 后 我的 javax persistence Entity 导入无法解析 我发现在 hibernate core 6 0 2 Final 中删除了
  • 使用 Mono 运行 F# 代码

    我安装了 F 2 0 0 并使用 mono 2 8 let rec fib n match n with 1 2 gt 1 n gt fib n 1 fib n 2 let n 40 let x fib n printfn d x 我使用
  • 检测 macOS 鼠标光标下的颜色

    我想知道如何获取 OS X macOS 鼠标指针当前所在像素的颜色 我编写了一个控制台应用程序 所以我没有可以覆盖的窗口或其他东西 当我构建并运行该程序时 它应该为我提供鼠标指针当前所在颜色的控制台日志 那可能吗 Using 这个问题和答案