如何写这个c# 键盘事件
来源:百度知道 编辑:UC知道 时间:2024/05/30 19:22:08
我是新手,对各种属性不熟悉,麻烦大侠写下 if判断语句就可以了 比如 “如果按下的键子是右方向键”
谢谢了
LZ要求的是C#,上边那位用的是VB吧。
我想LZ不是新手吧,都开始做图片的应用了。
我使用VS 2008跟你讲吧。
方法1:控件的事件
要完成你的要求就要使用事件-KeyPress事件(控件具有焦点,并且按下并释放某个键发生),至于这个事件是哪个控件的事件,LZ自己定吧。里面的判断可以使用if(e.KeyChar==(char)Keys.Down)就是判断按了向下的键,向上就是Up等。
方法2:重写OnKeyPress方法
首先把窗体的属性-keypreview属性设置为True,然后在你的窗体那个类里面写下如下函数:
protected override void OnKeyPress(KeyPressEventArgs e)
{
if (e.KeyChar ==(char) Keys.Down)
{写你自己的方法 }
base.OnKeyPress(e);//这句不能丢。
}
我用的是VS 2008,假如你那没有Keys.Down这类东西,你就直接用ASCII码来判断吧。37 38 39 40吧。
你可以在窗体的 key_down 事件中判断。
Private Sub Form1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown
select case e.KeyValue.ToString
case 37
'按下左的代码
case 38
'按下上
case 39
case 40
else case
end select
End Sub