Mobile 输入法接口简介

本文介绍了Windows Mobile软输入面板(SIP)的工作原理,通过IInputMethod接口实现自定义输入。文章详细分析了CClassFactory、CInputMethod和CIMWnd三个关键类的职责,以及相关API的使用,如CreateInstance、Select、Deselect等,揭示了输入法与系统交互的过程。
摘要由CSDN通过智能技术生成

1. 概述

        Windows Mobile中的软输入面板(SIP)是一种用来支持用户自定义输入的机制。默认情况下,它主要包括标准键盘、块识别器和字母识别器。SIP作为一种COM对象,通过IInputMethod接口来实现自定义输入。但由于其特殊性,不能像普通应用程序一样进行调试,所以在编写过程中有点复杂。

        为了代码层次分明,这里我对Mobile输入法的三个主要类:CClassFactory,CInputMethod和CIMWnd分别进行分析说明。前面两个类分别继承于IClassFactory和IInputMethod,是能让系统正常调用输入法所必须的com接口;而CIMWnd则是输入法的窗口,和普通的应用程序无异。

        这三个类的关系是CClassFactory通过自身的CreateInstance()函数来创建一个CInputMethod类的对象,然后CInputMethod类中会调用CIMWnd类来显示一个输入法窗口。下面我已图片的方式列出三者关系:

Mobile 输入法要用到的相关API如下:

  • Shell Reference
  • IInputMethod Interface
  • ATL
  • COM
  • Sequence of Events

2. 详细介绍

先来看看CClassFactory类的声明:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值