C# 使用箭头键
我想要的是这样的东西C# 使用箭头键,c#,.net,winforms,C#,.net,Winforms,我想要的是这样的东西 private void button1_Click(object sender, EventArgs e) { //do something here } private void doSomething() { //do something here } private void button1_Click(object sender, EventArgs e) { doSomething(); } private void For
private void button1_Click(object sender, EventArgs e)
{
//do something here
}
private void doSomething()
{
//do something here
}
private void button1_Click(object sender, EventArgs e)
{
doSomething();
}
private void Form1_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Down)
{
doSomething();
}
else if(e.keyCode==Keys.Right)
{
doSomethingElse();
}
//etc.etc
}
通过向下按箭头键,例如,按钮1
执行单击操作
ArrowKeyDown=button1。单击
,然后单击“我的图像”在我的图片盒中移动。往上走,右
和左
也一样 从按钮1中取出所有代码。单击并将其放入单独的函数中
然后,您可以从按钮1调用该函数。单击并按下按键事件
在key-down中,在调用子例程之前,必须使用if语句和e.KeyCode来确保使用了正确的键
如果您的代码如下所示
private void button1_Click(object sender, EventArgs e)
{
//do something here
}
private void doSomething()
{
//do something here
}
private void button1_Click(object sender, EventArgs e)
{
doSomething();
}
private void Form1_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Down)
{
doSomething();
}
else if(e.keyCode==Keys.Right)
{
doSomethingElse();
}
//etc.etc
}
现在会更像这样
private void button1_Click(object sender, EventArgs e)
{
//do something here
}
private void doSomething()
{
//do something here
}
private void button1_Click(object sender, EventArgs e)
{
doSomething();
}
private void Form1_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Down)
{
doSomething();
}
else if(e.keyCode==Keys.Right)
{
doSomethingElse();
}
//etc.etc
}
另一种更干净的方法是使用switch语句来处理keydown事件
private void Form1_KeyDown(object sender, KeyEventArgs e)
{
switch (e.KeyCode)
{
case Keys.Down:
doSomething();
break;
case Keys.Right:
//do Something Else
break;
case Keys.Up:
//do Something Else
break;
case Keys.Left:
//do Something Else
break;
default:
//they hit a key you did not handle
break;
}
}
您正在尝试使用,但在使用之前,必须设置窗体的属性KeyPreview=true
,并且您提到了按钮单击
,您可以使用
这是一个Windows窗体应用程序,还是一个web应用程序?你能再描述一点吗?@JohnSaunders-看起来像WinForm@罗德里戈-告诉我们你为什么尝试~你可以将命令(箭头按钮,鼠标点击)与动作分离-我不太理解你的问题,你能试着澄清一下吗?我试过了,但我不知道为什么当我按下键时什么都没发生。对不起,我一月份才开始使用这个程序。我的程序已经完成了它必须做的事情,但我想添加更多类似的东西。不要使用按钮,而是使用键盘。你真的为按钮编写了事件吗单击?我写了。我认为我的代码是错误的,我改变了一些简单的指令,但我得到了同样的结果。什么也没发生。