多功能输入法--内码转换模块设计与实现(3)

4. 框架模型
 
 
4.1 外挂式输入法模型
根据Windows消息处理机制,消息拦截过程,和IME输入法基本过程,我们可以建立一个基于消息拦截的汉字输入模型。模型可以大概分为三大部份:输入,处理,输出。
输入:进行消息的拦截和消息的筛选,把符合条件的消息转发到特定的消息处理程序中,把不需要的消息交还给操作系统。
处进:从拦截到的消息里面提取出有用的信息,对相关信息进行处进,例如判断消息的种类。对于我们这个多功能的输入法,我们要判断输入的消息是属于那种输入方法(五笔,拼音,英语)的。再调用相应的处理程序,最后把结果送到输入缓冲区。
输出:从输出缓冲区提出已转换好的汉字,把汉字转换为系统能够识别的Ascii 码,再转发到目标程序。
 
基本模型:

多功能输入法--内码转换模块设计与实现(3)

 

图9 外挂输入法基本模型

 

 

4.2 程序总体框架
整个程序主要由4 大模块组成,分别是 进程通信模块,字符编码检索模块,字库管理模块,配置模块。
进程通信模块:主要负责截获用户发给一般应用程序的键盘消息,并且把相关消息转发给输入法程序进程处理,最后把中文字符以某种特定的格式发送给应用程序,让它显示中文。
字符编码检索模块:接收进程通信发送的消息,把它转换成对应的编码,再分析编码确定进行那种查询操作,最后把查询结果放到特定位置并通知通信模块把相应的结果发到目标程序。
字库管理模块:主要负责提取字库原文件的有用信息,对字库文件的添加,修改,删除等更新操作。
配置模块:主要负责设置相关的功能,例如设置界面背景颜色,字体大小,字体颜色,选择皮肤等。配置模块把用户的相关配置写到对应的配置文件中,程序初始化时从配置文件读出对应的信息并对程序初始化。
 
 
多功能输入法--内码转换模块设计与实现(3)

 

图10 总体框架

 

 

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

你可能感兴趣的:(输入法)