1. 程式人生 > >WINCE 預設輸入發設定

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;