Form窗體中判斷按鍵信息

    在一FORM中判斷用戶按的是那個鍵,需要用到Form1_KeyUp、Form1_KeyDown、Form1_KeyPress,三者的大概意思:

    KeyPress主要用來接收字母、數字等ANSI字符,而 KeyDown 和 KeyUP 事件過程可以處理任何不被 KeyPress 識別的擊鍵,諸如:功能鍵(F1-F12)、編輯鍵、定位鍵以及任何這些鍵和鍵盤換檔鍵的組合等。與 KeyDown 和 KeyUp 事件不同的是,KeyPress 不顯示鍵盤的物理狀態(SHIFT鍵),而只是傳遞一個字符。KeyPress 將每個字符的大、小寫形式作爲不同的鍵代碼解釋,即作爲兩種不同的字符。而 KeyDown 和 KeyUp 用兩種參數解釋每個字符的大寫形式和小寫形式:keycode — 顯示物理的鍵(將 A 和 a 作爲同一個鍵返回)和 shift —指示 shift + key 鍵的狀態而且返回 A 或 a 其中之一。
     KeyDown、KeyUp事件是當按下 ( KeyDown ) 或鬆開 ( KeyUp ) 一個鍵時發生的。由於一般按下鍵盤的鍵往往會立即放開(這和鼠標不同),所以這兩個事件使用哪個差別不大。

 

    廢話不多說,看一代代碼

    1.

    

    注意:需要將FORM的Keypreview屬性設置爲ture; (keypreivew取true時窗口優先產生鍵盤事件)

    對於keypress、keyup可以自己試一下效果.

    2.重載ProcessCmdKey方法,這個方法不用設置keypreview屬性..

發佈了38 篇原創文章 · 獲贊 5 · 訪問量 13萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章