天天看點

C#窗體控件更新(九)

<b>26</b><b>、鍵盤事件處理 </b><b></b>

鍵盤事件在使用者按下鍵盤上的鍵時發生,可分為兩類。第一類是KeyPress事件,當按下的鍵表示的是一個

ASCII 字元時就會觸發這類事件,可通過它的 KeyPressEventArgs 類型參數的屬性 KeyChar 來确定按下鍵

的 ASCII 碼。使用 KeyPress 事件無法判斷是否按下了修改鍵(例如 Shift,Alt 和 Ctrl 鍵),為了判斷這些

動作, 就要處理KeyUp 或KeyDown事件, 這些事件組成了第二類鍵盤事件。 該類事件有一個KeyEventArgs

類型的參數,通過該參數可以測試是否按下了一些修改鍵、功能鍵等特殊按鍵資訊。 

1.KeyPressEventArgs類的主要屬性(KeyPress事件的一個參數類型) 

(1)Handled屬性:用來擷取或設定一個值,該值訓示是否處理過KeyPress事件。 

(2)KeyChar屬性:用來擷取按下的鍵對應的字元,通常是該鍵的ASCII碼。 

2.KeyEventArgs類的主要屬性(KeyUp和 KeyDown事件的一個參數) 

(1)Alt屬性:用來擷取一個值,該值訓示是否曾按下Alt鍵。 

(2)Control屬性:用來擷取一個值,該值訓示是否曾按下Ctrl鍵。 

(3)Shift屬性:用來擷取一個值,該值訓示是否曾按下Shift鍵。 

(4)Handled屬性:用來擷取或設定一個值,該值訓示是否處理過此事件。 

(5)KeyCode屬性:以 Keys枚舉型值傳回鍵盤鍵的鍵碼,該屬性不包含修改鍵(Alt、Control和 Shift鍵)

資訊,用于測試指定的鍵盤鍵。 

(6)KeyData 屬性:以 Keys 枚舉類型值傳回鍵盤鍵的鍵碼,并包含修改鍵資訊,用于判斷關于按下鍵盤

鍵的所有資訊。 

(7)KeyValue屬性:以整數形式傳回鍵碼,而不是Keys枚舉類型值。用于獲得所按下鍵盤鍵的數字表示。 

(8)Modifiers 屬性:以 Keys 枚舉類型值傳回所有按下的修改鍵(Alt、Control 和 Shift 鍵),僅用于判斷

修改鍵資訊。 

<b>27</b><b>、滑鼠事件處理 </b><b></b>

對滑鼠操作的處理是應用程式的重要功能之一,在VisualC#中有一些與滑鼠操作相關的事件,利用它們可

以友善地進行與滑鼠有關的程式設計。 

(1)MouseEnter事件:在滑鼠指針進入控件時發生。 

(2)MouseMove事件:在滑鼠指針移到控件上時發生。事件處理程式接收一個MouseEventArgs類型的參

數,該參數包含與此事件相關的資料。該參數的主要屬性及其含義如下。 

Button屬性:用來擷取曾按下的是哪個滑鼠按鈕。該屬性是MouseButtons枚舉型的值, 

取值及含義如下:Left(按下滑鼠左按鈕)、Middle(按下滑鼠中按鈕)、Right(滑鼠右按鈕)、None(沒

有按下滑鼠按鈕)、 XButton1 (按下了第一個XButton按鈕, 僅用于Microsoft智能滑鼠浏覽器)和XButton2

(按下了第二個XButton按鈕,僅用于 Microsoft智能滑鼠浏覽器) 

Clicks屬性:用來擷取按下并釋放滑鼠按鈕的次數。 

Delta屬性:用來擷取滑鼠輪已轉動的制動器數的有符号計數。制動器是滑鼠輪的一個凹口。 

X 屬性:用來擷取滑鼠所在位置的x坐标。 

Y 屬性:用來擷取滑鼠所在位置的y坐标。 

(3)MouseHover事件:當滑鼠指針懸停在控件上時将發生該事件。 

(4)MouseDown事件:當滑鼠指針位于控件上并按下滑鼠鍵時将發生該事件。事件處理程式也接收一個

MouseEventArgs類型的參數。 

(5)MouseWheel事件:在移動滑鼠輪并且控件有焦點時将發生該事件。該事件的事件處理程式接收一個

MouseEventArgs類型的參數 

(6)MouseUp 事件:當滑鼠指針在控件上并釋放滑鼠鍵時将發生該事件。事件處理程式也接收一個

MouseEventArgs類型的參數。

(7)MouseLeave事件:在滑鼠指針離開控件時将發生該事件。

本文轉自 吳雨聲 51CTO部落格,原文連結:http://blog.51cto.com/liangxiao/719404,如需轉載請自行聯系原作者