这篇文章参考了Input Method Manager。

从输入法的角度来讲,应用程序可以分为IME-aware和IME-unaware两类。
IMM是使应用程序和IME进行通信的一种技术。它以服务的方式运行。
IME允许用户使用标准键盘输入复杂的字符和符号,不如输入中文、韩文和日文等。
IME监控用户的击键,预测用户期望的输入,提供候选词以供选择。
IMM只有在中国、韩国和日本本地化环境中有效。
1、候选词类表(Candidate List)
候选词类表是还有字符和字符串的数组。要获得相关信息可以调用ImmGetCandidateListCount和ImmGetCandidateList两个方法。
2、编码字符串(Composition String)
当用户在Composition Window中键入文本时,IME追踪Composition String的属性、Clause、击键和光标位置信息。每个Clause中的所有字符必须具有相同的属性。
属性数组为字符串中的每个字节对应一个值。数组中的每一个值的第0~3位可以是一下值的一个组合。
| 1 ATTR_INPUT | 用户键入的字符。IME还没有转换该字符。 |
| 2 ATTR_INPUT_ERROR | IME不能转换的字符。例IME不能把一些辅音放到一起。 |

本文介绍了Windows系统中的输入法管理器(IMM),包括IME-aware和IME-unaware应用程序的区别,IME的功能,如候选词类表、编码字符串、热键、IME消息、IME窗口类、输入上下文以及IME的UI组件。IME允许用户使用键盘输入复杂字符,通过窗口消息与应用程序交互,并提供了切换输入模式和选择候选词的功能。
最低0.47元/天 解锁文章
3195

被折叠的 条评论
为什么被折叠?



