關於t9輸入法的核心程式(由朋友nix提供),共兩個檔案,乙個是nixinputmethod.h,還有乙個是t9.c; 參見附錄。
具體輸入法的實現方法如下:
1. 首先建立乙個對話方塊,然後在其中放入兩個控制項:idc_edit1 和 idc_word (static控制項)
2. 為了實現在edit中一邊輸入,static中會出現智慧型的功能,所以我們的實現如下:
a) 過載函式pretranslatemessage ,使其能夠捕捉到鍵盤的所有事件,故其實現如下:
bool idd_dialog1::pretranslatemessage(msg* pmsg)
else
if (getasynckeystate(vk_return)) // enter
else
break;
default:
pmsg->wparam = vk_tab;
}} else
/** 通過1、2、3....選擇第幾個字
*/if (pmsg->message == wm_keydown && (isdigit(pmsg->wparam) || (pmsg->wparam >64 && pmsg->wparam < 91)))
updatedata();
pctrl->getwindowtext(str);
str += (pmsg->wparam + 32);
cshincoinputmethod pime;
getdlgitem(idc_word)->setwindowtext(pime.getinputstring((unsigned char*)str.getbuffer(100)));
str.releasebuffer();
}return cdialog::pretranslatemessage(pmsg);
} catch (...)
return true;}
else}}
dwtemp=(*p2)[6]+(*p2)[7]*256+(*p2)[8]*65535+py_mb_begin;
return((byte *)(dwtemp)); //"返回查詢結果首位址"
}cstring cnixinputmethod::getinputstring(byte input_py_val)
T9輸入法的實現
t9輸入法,名字聽起來陌生,可是大家卻經常使用它。可以說t9輸入法是輸入法歷史中的一次革命。至少自t9輸入法開始,輸入法有長足的進步。如圖手機中九個數字鍵。26個英文本母被分配到2至9這8個數字鍵上。以前想輸入英文單詞的時候總是需要連續多次按某個鍵,才能得到目標字母。比如想輸入 hello 就需要按...
智慧型T9英文輸入法
智慧型t9英文輸入法 time limit 1s memory limit 1000k total submit 1556 accepted 534 某款新型手機為了方便使用者,希望開發一種新的英文輸入法.要求在輸入英文的時候輸入法不但能夠做到自動聯想,還能進行自動 糾錯.譬如使用者希望輸入hell...
T9手機輸入法的發明者Martin King
martin king是曾經最流行的手機文字輸入法t9的發明者,2010年9月21日因癌症醫治無效去世,享年60歲,他長期抗爭的疾病來自越南戰爭時期美軍試用的橙劑所誘發。他的生命如同隕星短暫地掃過天空,整個世界都從他的才智中受益非淺。martin king最大的貢獻就是為所有手機使用者熟知的t9輸入...