将文本粘贴到Mac OSX上另一个第三方应用程序的文本框中

时间:2016-04-13 19:33:30

标签: objective-c macos cocoa accessibility-api

我正在Mac上构建一个cocoa应用程序。是否有可能 1)使第三方应用程序窗口成为焦点。 2)将光标定位到第三方应用程序窗口的文本框中? 3)在文本框中插入文本。

编辑: - 我尝试使用AXUIElementSetAttributeValue实现此目的,但我无法使其工作。 获取相应的AXUIElement但在设置文本后,更改在文本框中不可见。 我尝试使用辅助功能检查器来获取控件的详细信息。控件的类型为“AXWebArea”。 这是代码。

    NSString *newTextStr = @"Hi!";

    AXUIElementSetAttributeValue(windRef, kAXFocusedAttribute, kCFBooleanTrue);

    AXError status = AXUIElementSetAttributeValue(windRef, kAXValueAttribute, (__bridge CFTypeRef)(newTextStr));

    if (status != kAXErrorSuccess) {
        NSLog(@"AXUIElementSetAttributeValue failed");
    }
    AXUIElementPerformAction(windRef, kAXConfirmAction);

有人可以帮我吗?

0 个答案:

没有答案