1. 程式人生 > >C#中如何判斷組合鍵

C#中如何判斷組合鍵

    之前總會碰到一些程式設計中的小發現或者在網上搜索問題的時候,發現了一些解決辦法,完成工作,記到腦子裡也就是了。
但好記性不如爛筆頭子,我之前上學的時候對老師的這句話很不以為然,可能當時也是記憶力好的時期的緣故吧,現在好多東西一段時間不用不接觸就忘記了,所以,準備在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的朋友都能體會鍵盤操作的暢快感吧!