【原】WinCE输入法使用总结
1、调用和隐藏输入法
调用与隐藏输入法方式有多种,但最简单的是采用以下函数:
SipShowIM(SIPF_ON); // 调出输入面板
SipShowIM(SIPF_OFF); // 隐藏输入面板
当然,得注意包含头文件#include "Sipapi.h"。一般情况下,WinCE里调用是当在光标移动至编辑框等输入控件时调出,这时可以在EN_SETFOCUSE消息响应函数里面添加调出输入面板函数,而光标离开时隐藏可在EN_KILLFOCUSE消息响应函数里面调用。
另外,输入法的位置等信息可以在SIPINFO结构体中进行修改。
2、开机默认输入法设置
大部分开发板自带触摸屏,一般如果要实现中文或手写输入,可下载捷通、国笔等手写输入软件,注册好后,可在注册表里面设置默认的输入法。
打开注册表编辑器,找到如下键选项:
[HKEY_CLASSES_ROOT\CLSID\{4A5AF224-05B8-41bc-8ED3-0DF0432A326B}]
@="手写输入法"
[HKEY_CLASSES_ROOT\CLSID\{F50603D1-CF2F-41d8-A74B-651226633FF0}]
@="拼音输入"
以上只列出了两种输入法,每个人的键选项内容可能不同,然后找到注册表:[HKEY_CURRENT_USER\ControlPanel\Sip],其中:
"DefaultIm"="{F50603D1-CF2F-41d8-A74B-651226633FF0}"
这就是默认输入法设置选项,修改这个值就能设置相应的输入法。如上面设置的是系统自带的小输入面板,而大输入面板的注册表位置为:
[HKEY_CLASSES_ROOT\CLSID\{28BD0FFF-23E2-4976-A685-C419CB8011DC}]
@="拼音输入"
3、程序中输入法设置
可采用函数:
BOOL SipSetCurrentIM( CLSID* pClsid);
参数CLSID为可用输入法,通过该函数可设置当前可用的输入法。
4、列举可用输入法
int SipEnumIM(
IMENUMPROC pEnumIMProc //指向回调函数SipEnumIMProc
);
如果pEnumIMProc设置为NULL,则SipEnumIM返回当前系统中可用输入法的数量。回调函数SipEnumIMProc的原型为:
int SipEnumIMProc(
IMENUMINFO* pIMInfo //指向IMENUMINFO结构体
);
struct_IMENUMINFO{
TCHAR szName[MAX_PATH];
CLSID clsid; //安装的可用输入法
}IMENUMINFO;
posted on 2012-03-22 20:05 Micheal菜菜 阅读(1873) 评论(0) 编辑 收藏 举报