Winform中键盘事件
Delegate是”KeyPressEventHandler”。这二个Delegate都被封装在命名空间
“Syetem.Windows.Froms”中。为”KeyDown”、”KeyUp”的事件提供数据的类是”KeyEventArgs”。而为
“KeyPress”事件提供数据的类是”KeyPressEventArgs”。同样这二者也被封装在命名空间 “Syetem.Windows.Froms”中。
在C#程序定义”KeyDown”、”KeyUp”事件的语法如下:
“组件名称”.”事件名称”+= new
Syetem.Windows.Froms. KeyEventHandler(”事件名称”);
下面是程序中具体实现代码:
button1. KeyUp += new Syetem.Windows.Froms. KeyEventHandler(button1_KUp); |
下面是响应上面事件的基本结构。
private void button1_KUp ( object sender , Syetem.Windows.Froms. KeyEventArgs e ) { 此处加入响应此事件的代码 } |
在C#程序定义”KeyPress”事件的语法如下:
“组件名称”.”事件名称”+= new Syetem.Windows.Froms. KeyPressEventHandler(”事件名称”);
下面是程序中具体实现代码:
button1. KeyPress += new Syetem.Windows.Froms. KeyPressEventArgs(button1_KPress); |
在完成了事件的定义以后,就要在程序中加入响应此事件的代码,否则程序编译的时候会报错。下面是响应上面事件的基本结构。
private void button1_KPress ( object sender , Syetem.Windows.Froms. KeyPressEventArgs e ) { 此处加入响应此事件的代码 } |
注释:程序中出现的”button1″是定义的一个按钮组件。
(2).和键盘相关事件中的典型问题处理办法:
和键盘相关的典型问题无非就是判定到底是哪个按键被按动。通过上面的三个事件都可以完成。并且在”KeyEventArgs”类中通过了一个属性”KeyCode”,可以用他来读取当前按键。所以就在”KeyUp”或者
“KeyDown”事件中处理这个问题。根据上面这些知识,可以得到用C#编写读取读取按键的程序代码,下面就是此代码(key.cs)和此代码运行后的界面:
|