如何截獲帶文字輸入的控制項的輸入法輸入結果 c#
原創沐雨迎風 最後發布於2016-05-31 19:24:15 閱讀數 2207 收藏
展開最近在開發乙個串列埠終端軟體,需要實現輸入漢字,也就是類似於超級終端那樣,輸入乙個漢字或一串漢字立馬就傳送到串列埠。
對於字母,很簡單,監控按鍵就可以,如果是漢字,那就不行了。因為漢字是輸入法輸入的,文字控制項不支援輸入法輸入產生事件。所以就需要另闢蹊徑。
網上找了很久,始終沒有找到好的方案,後來
找到了思路,只不過樓主沒有把問題完美解決。所以我在他的基礎上徹底解決了問題
首先是如何得到輸入法的結果
**如下:
egcs_resultstr = 0x0800,
public class getimecomposition
else
}finally}}
接著是自定義控制項
不同的控制項需要建立不同的類,這裡我用了richtextbox
public class cmdrichtextbox : richtextbox
break;
default:
base.wndproc(ref m);
break;}}
}附上列舉值定義
HOOK截獲中文輸入的方法
標 題 關於hook截獲中文輸入 發信站 安全焦點 2004年12月10日13時58分49秒 以前一直沒有注意到乙個問題,就是用鍵盤鉤子截獲字元輸入時是截不到特殊字元的,比方說中文輸入法之類的.後來用到了訊息鉤子去hook wm ime char,這時候大部分已經能夠獲取了,但是對於其他一些程式,比...
輸入無效文字輸入的方式
大多數具有某種使用者介面的程式都需要處理使用者輸入。在您編寫的程式中,您一直在使用std cin來請求使用者輸入文字輸入。因為文字輸入是如此自由的 使用者可以輸入任何東西 使用者很容易輸入不期望的輸入。在編寫程式時,應該始終考慮使用者將如何 無意地或以其他方式 濫用程式。乙個寫得很好的程式會 使用者...
帶星號的密碼輸入
在軟體開發中,往往會遇到要求使用者輸入密碼的情況。出於對密碼的保密,輸入的字元是不會顯示到螢幕上的。例如,在登入linux系統時,輸入使用者名稱後,輸入的密碼是不顯示的。可用getch 這個函式,但是在linux檔案下,此函式所在的標頭檔案為curses.h。curses庫是由柏克萊大學的bill ...