C 中如何判斷組合鍵

2021-04-22 14:51:10 字數 682 閱讀 5760

之前總會碰到一些程式設計中的小發現或者在網上搜尋問題的時候,發現了一些解決辦法,完成工作,記到腦子裡也就是了。

但好記性不如爛筆頭子,我之前上學的時候對老師的這句話很不以為然,可能當時也是記憶力好的時期的緣故吧,現在好多東西一段時間不用不接觸就忘記了,所以,準備在blog裡把一些小小的程式設計心得什麼的寫一下,主要是為自己以後查詢用吧。不一定會有很詳盡的例項,只寫最核心的部分,估計寫的東西都是為了自己以後一看,根據自己的做事編碼風格能很快的投入到專案中。

c# winform的窗體類有keypreview屬性,可以接收窗體內控制項的鍵盤時間註冊。

窗體和控制項都有keydown,keyup,keypress三個事件,每個時間都會有keyeventargs引數傳入,只要判斷傳入引數的keychar就可以了,framework提供了keys列舉來表示鍵盤上的各個鍵。

核心判斷的**如下:

1.單鍵判斷

if (e.keycode == keys.delete)

2.組合建判斷: 

if (e.modifiers.compareto(keys.control) == 0 && e.keycode == keys.delete)

方便的鍵盤操作的提供,會給客戶在程式的操作提供非常流暢的滿意度。其實客戶也是有apm的,甚至比我們開發的人用的都熟。

估計每乙個war3的朋友都能體會鍵盤操作的暢快感吧!     

判斷組合鍵

getasynckeystate查詢指定鍵的實時狀態 使用後發現兩者的區別 以組合鍵ctrl a為例 if nchar 0x041 getkeystate vk control 0x8000 ctrl a 的效果是按下ctrl和a,實現指定的操作 只有先按下ctrl然後按a或者同時按下二者,才能執行...

c 中按下組合鍵

form窗體中判斷按鍵觸發 捕捉 1.把窗體的keypreview設為true 2.用form1 keyup form1 keydown來捕捉資訊 注 keyeventargs的keycode成員用於標識按鍵 modifiers成員用於標識指示按下的 ctrl shift 和 alt 鍵的組合。例 ...

c 中組合鍵的應用

組合鍵在程式中是很有用的,像聊天軟體中ctrl 回車傳送訊息,又或是ctrl a來回完成什麼快捷操作等。在c 中應用這類組合快捷鍵也是比較方便的,但對於初學者來說,可能以前總是用 來運算鍵值,這種方法到了c 中可就不那麼靈光了,那麼到底如何應用呢,看一段簡單的 keyup 事件 private vo...