( ! ) Warning: include(): http:// wrapper is disabled in the server configuration by allow_url_include=0 in D:\www\up\CSharp\event01.php on line 20
Call Stack
#TimeMemoryFunctionLocation
10.0156361624{main}( )...\event01.php:0

( ! ) Warning: include(http://pub.houheaven.com/Nav02/Nav_deep2.htm): failed to open stream: no suitable wrapper could be found in D:\www\up\CSharp\event01.php on line 20
Call Stack
#TimeMemoryFunctionLocation
10.0156361624{main}( )...\event01.php:0

( ! ) Warning: include(): Failed opening 'http://pub.houheaven.com/Nav02/Nav_deep2.htm' for inclusion (include_path='.;C:\php\pear') in D:\www\up\CSharp\event01.php on line 20
Call Stack
#TimeMemoryFunctionLocation
10.0156361624{main}( )...\event01.php:0

① 键盘

1.1 KeyCode、KeyValue、KeyData

KeyCode:Keys枚举,通过返回的KeyEventArgs类的事件参数对象的KeyCode属性,来获得KeyDown或KeyUp事件的键盘代码。(举例:按下组合键【Ctrl+A】,KeyCode:A)

KeyValue:返回值是KeyCode枚举的Integer值。(举例:按下组合键【Ctrl+A】,KeyValue:65(A))

KeyData:用来记录组合键。(举例:按下组合键【Ctrl+A】,KeyData:"A,Ctrl")


注意:这三个属性对于字母键只记录其大写的值(不管用户是否开启了【Caps Lock】或者按住【Shift】),如果想要区分大小写,需要使用KeyChar属性来判断。


1.2 组合键判断

在KeyEventArgs类中,e.Control=Ctrl、e.Shift=Shift、e.Alt=Alt,这些属性返回的是bool类型的值,true表示按下,false表示没有按。

【具体实例】:打开

[ 源代码 ]

// 判断用户是否按下了【Ctrl+Shift+A】

if(e.Control&&e.Shift&&KeyValue==65)

this.Close();


1.3 Keys 枚举

枚举常量枚举常量
Backspace8Keys.BackSpaceInsert45Keys.Insert
Tab9Keys.TabDelete46Keys.Delete
Enter13Keys.Enter   
Caps Lock20Keys.Capital(数字区)0-948-57Keys.D0~Keys.D9
Esc27Keys.EscapeA(a)~Z(z)65-90Keys.A~Keys.Z
PageUp33Keys.Prior(小键盘)0-996-105Keys.NumPad0~9
PageDown34Keys.Next*106Keys.Multiply
End35Keys.End+107Keys.Add
Home36Keys.Home-109Keys.Subtarct
37Keys.Left.110Keys.Decimal
38Keys.Up/111Keys.Divide
39Keys.RightF1~F12112-123Keys.F1~Keys.F12
40Keys.Down   

1.4 KeyPress事件的局限性

  • 不能识别【Shift】【Ctrl】【Alt】键的特殊组合。
  • 不能识别方向(箭头)键。
  • 不能识别【PageUp】【PageDown】键。
  • 不能区分数字小键盘中的数字键和主键盘中的数字键。
  • 不能识别与菜单命令无关的功能键。

② 鼠标

2.1 鼠标事件的发生顺序

MouseEnter,MouseMove,MouseHover/MouseDown/MouseWheel,MouseUp,MouseLeave

2.2 MouseEventArgs类

属性说明
Button获取按下的是哪个鼠标键,取值可以使用MouseButtons枚举的成员
Clicks获取按下并释放鼠标按键的次数(整型),1表示单击,2表示双击
Delta获取鼠标转轮已转动的制动器数的有符号计数,制动器是鼠标滚轮的一个凹口
X 或 Y获取当前鼠标指针所在位置的X坐标或Y坐标
Ctrl如果在鼠标事件发生时按住【Ctrl】键,则返回true,否则返回false
Shift如果在鼠标事件发生时按住【Shift】键,则返回true,否则返回false

3.2 MouseButtons

成员名称说明
Left鼠标左键
Middle鼠标中键
Right鼠标右键
XButton1第一个鼠标拓展键
XButton2第二个鼠标拓展键
显示框架
显示框架
显示框架
显示框架