原生插入符位置 macos cocoa

2024-05-13

我希望能够使用 cocoa 或 appleScript 获取 Mac High Sierra 中任何应用程序内的全局插入符位置。我已经使用 NSEvent 来获取键盘和鼠标挂钩,但是有没有办法获取插入符位置挂钩?

插入符号与鼠标位置不同。它会随着按键事件或鼠标单击而移动。在 Windows 中,您几乎可以在任何位置获取插入符号位置。我想知道 macOS 是否有类似的东西。

我想在文本插入符号上显示一个弹出窗口,如果我在键盘上键入或回车,它会随文本移动。我尝试获取按键事件的位置(locationInWindow),但它给了我鼠标位置。我不是沙箱,所以我什至可以调用 applescripts

更新:可以通过使用可访问性 API 获取插入符号之前的字母边界来实现此目的。

thanks


我还没有机会亲自尝试,所以你可能会先于我确认/拒绝这一点。

UIEvent 有addGlobalMonitorForEventsMatchingMask:handler:其中掩码的值为NSEventMaskCursorUpdate并且大概返回的 NSEvent 对象将包含一个可以执行操作的坐标(即转换为屏幕空间)。

这里的警告是文档明确指出的

仅当启用辅助功能时才能监视与按键相关的事件 或者您的应用程序是否可信任可访问性访问(请参阅 AXIsProcessTrusted)。

您的帖子似乎表明您不希望使用 Accessibility API(“但如果不使用 Accessibility API”),以便may意味着您在寻求满足的特定要求组合方面不走运。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

原生插入符位置 macos cocoa 的相关文章

  • 使用 Swift 导入 aurioTouch 库

    我正在尝试将 Objective C 应用程序转换为 swift 我想导入课程奥里奥触摸 https developer apple com library ios samplecode aurioTouch Introduction In
  • 如何使用 NSUndoManager 支持替换 UITextView 中的文本?

    我希望能够以编程方式替换 UITextView 中的某些文本 因此我将此方法编写为 UITextView 类别 void replaceCharactersInRange NSRange range withString NSString
  • 在 Mac OS X 中将 Caps Lock 用作 Esc

    How do I make Caps Lock work like Esc in Mac OS X Edit As described in this answer https stackoverflow com a 40254864 66
  • Vim 无法在 OS X 上使用 python 进行编译

    我一直在尝试编译vim 7 3 with 蟒蛇2 7支持苹果系统 X 10 6 Vim 本身编译得很好 但嵌入的 python 编译得不太好 我已采取的步骤 hg clone https vim googlecode com hg vim
  • 为什么 Objective-C 数组参数不使用冒号表示法?

    我目前正在从大牧场指南书中学习一些 Objective C 我的理解是 具有多个参数的方法使用冒号来分隔每个参数 但是在阅读有关创建数组的内容时 我发现了以下代码片段 NSArray dateList NSArray arrayWithOb
  • 如何消除圆形矩形按钮周围的间隙而不删除其周围的边框? [复制]

    这个问题在这里已经有答案了 顺便提一句 这可能看起来像是关于按钮阴影问题的问题的重复 但它们有单调的背景 在我的例子中 背景是一些图像 所以简单的边框不能解决问题 While making app for iPhone Pad I noti
  • 如何在 Mac OS X 中删除文件的“扩展属性”?

    我有一个苹果脚本 http en wikipedia org wiki AppleScript运行压力测试的脚本 测试的一部分是打开 保存和关闭某些文件 不知何故 这些文件具有一些 扩展属性 禁止保存文件 这会导致压力测试失败 如何删除扩展
  • -[MyClassName copyWithZone:] 无法识别的选择器发送到实例

    我的应用程序崩溃了 原因是 MyClassName copyWithZone 无法识别的选择器发送到实例 我有两节课 假设 Class1 和 Class2 Class1 看起来像 Class1 h interface Class1 NSOb
  • 有没有一种“正确”的方法让 NSTextFieldCell 绘制垂直居中的文本?

    我有一个NSTableView有几个文本列 默认情况下 dataCell这些列是 Apple 的一个实例NSTextFieldCell类 它可以完成各种奇妙的事情 但它绘制与单元格顶部对齐的文本 并且我希望文本在单元格中垂直居中 有一个内部
  • iOS 初学者:带有 3 个按钮的 UIAlertView 窗口 > 检查按下了什么按钮

    我有一个教程中的工作代码 但不完全理解它 情况 在我的 iPhone 应用程序中按下按钮后 将出现一个包含三个按钮的 AlertView 现在我想检查用户按下了什么按钮 教程中的代码 IBAction infoButtonPressed i
  • 以编程方式访问 Apple Notes 内容

    是否可以以编程方式访问Apple Notes 即macos和ios中预装的应用程序 内容 macOS 上的 Notes 可使用 AppleScript 编写脚本 要注销所有笔记 请打开脚本编辑器并使用以下内容创建一个新脚本 然后单击播放按钮
  • 在 sed 中插入换行符 (Mac OS X)

    如何在 sed 的替换部分插入换行符 此代码不起作用 sed s 1234 n 1 g input txt gt output txt 其中 input txt 是 test1234foo123bar1234 和output txt应该是
  • 如何使自定义键盘扩展再次成为第一响应者

    我正在制作一个自定义键盘扩展 在这个键盘中 我有另一个 uitextfield 作为搜索字段 因此当我在自定义键盘上键入时 我不会将文本发送到 safari 的文本字段或某些聊天应用程序的文本字段 而是发送将文本发送到自定义键盘中的 uit
  • 转发 UIAlertView 的可变参数

    我正在尝试设置一个非常简单的UIAlertView带有文本编辑 确定和取消按钮 我想根据文本编辑的内容禁用确定按钮 为了能够保留委托 以便他不会在警报视图之前消失 从而在用户对警报视图执行某些操作时立即导致崩溃 我对其进行了子类化 现在 我
  • 转换任何对象?到字符串

    我有一个返回 AnyObject 的函数 func aFunction param String gt AnyObject 如何将其转换为字符串 和字符串 尝试这个 if let result aFunction test as Strin
  • Docker 进程被神秘的“Killed”消息杀死

    在 docker 容器中运行 python 脚本 一切似乎都运行顺利 看到一些 STDOUT 消息 大约 5 分钟后我得到了Killed消息 没有进一步的解释 并且该过程停止 查询数据库可能是磁盘空间问题 也可能是 OOM 问题 我不确定
  • NSTextview:如何获取插入点的字形矩形?自定义文本视图?

    我似乎找不到任何有关如何获取插入点的矩形的文档 我试图在文本插入点 插入点正下方显示一个视图 如自动完成 我正在考虑制作一个自定义文本视图 但如果我可以避免它 那对我的情况来说将是理想的 谢谢 NSRect rectForActiveRan
  • python 语言环境奇怪的错误。这究竟是怎么回事?

    所以今天我升级到了 bazaar 2 0 2 我开始收到这条消息 顺便说一句 我在雪豹上 bzr warning unknown locale UTF 8 Could not determine what text encoding to
  • UIPopViewController 不工作

    我有一个 xib 文件 其中有 h 和 m 链接 在 xib 中有一个带有 textView 的 UIView 我想要对该视图执行的操作是 当您单击按钮时将其作为 UIPopViewController 打开 这是我的代码 IBAction
  • iOS HTTP 请求在后台运行

    当应用程序处于后台时 可以向 PHP 服务器发出 HTTP 异步请求吗 该应用程序是基于位置的应用程序 应收集当前位置并每 5 或其他值 分钟将坐标发送到服务器 即使应用程序处于后台 我也可以将 http 帖子发送到服务器吗 我读到了很多关

随机推荐