获取活动应用程序不是问题,我已经实现了这一点。
我想知道的是如何将“Cmd-C”组合键发送到活动应用程序,以便将所选文本放入剪贴板(常规粘贴板)。
甚至更好:如何告诉活动应用程序在不发送击键的情况下执行复制操作,或者在触发复制操作时不突出显示“编辑”菜单。
我无法使用NSAppleScript(10.2),因为此特定类必须尽可能向后兼容(理想情况下低至10.0)。
我已经看过NSAppleEvents(这似乎是要走的路),但似乎找不到办法做到这一点。非常欢迎具体的答案!
提前致谢!
更新
Rob的NSAppleScript解决方案可以工作,但我仍然有兴趣在不需要NSAppleScript的情况下这样做。我已经尝试使用CGPostKeyboardEvent(使用最后一个布尔值将键设置为“向上”或“向下”状态)但我似乎无法找到键代码或任何字符代码表。有人可以准确地用CGPostKeyboardEvent来键入“c”吗? (CGCharCode和CGKeyCode表将是完美的。)
答案 0 :(得分:5)
答案 1 :(得分:2)
如果您可以在计算机上启用系统事件(辅助设备访问),则可以使用NSAppleEvent [编辑:实际上是NSAppleScript] initWithSource发送此脚本:
tell application "System Events" to keystroke "c" using command down
我不知道什么时候引入系统事件。