如何截獲帶文字輸入的控制項的輸入法輸入結果 C

2021-10-04 22:41:03 字數 624 閱讀 2565

如何截獲帶文字輸入的控制項的輸入法輸入結果 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 ...