如何切換英文及中文輸入法(不指定注音或倉頡等) |
尚未結案
|
jeffreck
高階會員 發表:247 回覆:340 積分:197 註冊:2003-01-23 發送簡訊給我 |
各位前輩請教一下: 如何切換英文及中文輸入法(不指定注音或倉頡等)
在TEdit中可以設定ImeName可以設定輸入法(如注音或倉頡)
但使用者可能用[注音]也可能用[倉頡],所以我想只做[英文]及[中文]的切換
如切換到中文時那就看上次設定是用那種輸入法(如注音或倉頡)
不知有何方法可以這樣處理??
我有一個想法是這樣的
當TEdit OnEnter時
1.檢查目前是中文輸入法或英文
2.如為英文就送出Ctrl 空白鍵切到中文輸入法
但目前還在找要如入寫這段程式,所以請前輩教導一下,謝謝 非常非常的謝謝你,因為有你這世界變的更美好 ☆ ^_^ ☆
°∴°﹒☆°.﹒‧°∴°﹒°.﹒‧°∴°﹒
﹒‧°∴°﹒☆°.﹒‧°∴°﹒°.﹒‧°∴°﹒﹒‧°∴°﹒☆°.
|
ddy
站務副站長 發表:262 回覆:2105 積分:1169 註冊:2002-07-13 發送簡訊給我 |
請參考範例
Windows2000下指定輸入法的範例 http://delphi.ktop.com.tw/topic.php?topic_id=17931
範例中有此函數
//偵測目前作用中的輸入法檔案名稱 function GetImeFileName: string; var szImeFileName: array[0..MAX_PATH] of char; begin if ImmGetDescription(GetKeyboardLayout(0), szImeFileName, MAX_PATH) <> 0 then Result := AnsiUpperCase(StrPas(szImeFileName)) else Result := ''; end;可將其目前之輸入法名稱保留(供下次使用時指定輸入法)利用ini 或temp 儲存 於edit onenter 時再用 SetImeName() 方法設定上次所保留的輸入法 另可參考其它相關 Windows2000下指定輸入法 http://delphi.ktop.com.tw/topic.php?TOPIC_ID=18705 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |