是否有任何(App Store安全)方式自动填充另一个应用程序的第一个响应者文本字段?例如,使用NSStatusBar应用程序指定的热键,用户在单独的应用程序中突出显示文本,如TextEdit,并将新文本粘贴到状态栏应用程序根据情境数据生成的TextEdit中。
答案 0 :(得分:2)
有没有办法自动填写另一个应用程序的第一个响应者文本字段?
是的,请查看以下AppleScript:
tell application "System Events" to keystroke "Hello World"
使用NSTask
从Objective-C运行:
NSString *theText = @"Hello World";
NSString *theSource = [NSString stringWithFormat:@"tell application \"System Events\" to keystroke \"%@\"",theText];
NSAppleScript *theScript = [[NSAppleScript alloc] initWithSource:theSource];
[theScript executeAndReturnError:nil];
请注意,脚本需要访问辅助设备:
系统偏好设置→通用访问→启用辅助设备访问
使用上述代码的申请不会被Apple拒绝。