天天看点

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,如需转载请自行联系原作者