【发布时间】:2011-02-09 01:47:15
【问题描述】:
编辑:事实证明,我在最初探索可访问性 API 时被误导了。在 AX 层次结构中找到安全文本字段后,我就可以轻松设置该值。不知道除此之外如何处理这个问题,但我想为未来的搜索者更新这个问题。
我正在编写一些代码,这些代码将使用辅助功能 API 将键盘事件发布到目标应用程序。到目前为止,我已经能够编写一个简单的应用程序,它允许我输入一个字符串值,然后将带有这些键代码的键盘事件发布到目标应用程序。实际上,字符串会从另一个位置读取。
我还没有弄清楚如何确定是否也应该发布以及哪些修改键也应该发布。例如,当我在我的测试应用程序中键入Hello, world! 时,输入将作为hello, world1 发送到另一个应用程序,因为我还没有包含用于创建大写H 和感叹号的修饰键。像é 或ü 这样的多键字符使这变得更加复杂。例如,发送é 会发送一个没有重音的原始e。
是否有一种我忽略的简单方法可以识别修饰符以与键码结合以创建特定的 NSString 或 unichar?如果没有,是否有人建议如何进行?到目前为止,我想出的最好方法是使用所有可能的修饰符组合调用UCKeyTranslate,直到找到与unichar匹配的一个我使用-[NSString characterAtIndex:]我不确定这是可扩展的还是可靠的,但是,给定如上所述,某些字符的多次击键特性。
提前致谢!
【问题讨论】:
标签: cocoa unicode nsstring accessibility