c# 怎样响应方向键? KeyDown中不能响应方向键
c#怎样响应方向键?KeyDown中不能响应方向键,换成字母键就行,是什么原因?求指导privatevoidForm1_KeyDown(objectsender,KeyE...
c# 怎样响应方向键? KeyDown中不能响应方向键,换成字母键就行,是什么原因?求指导
private void Form1_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyData == Keys.Up)
p.MoveLeft();
else if (e.KeyData == Keys.Right)
p.MoveRight();
else if (e.KeyData == Keys.Up)
p.MoveUp();
else if (e.KeyData == Keys.Down)
p.MoveDown();
else if (e.KeyData == Keys.A)
p.MoveLeft();
else if (e.KeyData == Keys.D)
p.MoveRight();
else if (e.KeyData == Keys.W)
p.MoveUp();
else if (e.KeyData == Keys.S)
p.MoveDown();
} 展开
private void Form1_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyData == Keys.Up)
p.MoveLeft();
else if (e.KeyData == Keys.Right)
p.MoveRight();
else if (e.KeyData == Keys.Up)
p.MoveUp();
else if (e.KeyData == Keys.Down)
p.MoveDown();
else if (e.KeyData == Keys.A)
p.MoveLeft();
else if (e.KeyData == Keys.D)
p.MoveRight();
else if (e.KeyData == Keys.W)
p.MoveUp();
else if (e.KeyData == Keys.S)
p.MoveDown();
} 展开
展开全部
你的窗体中是否有其它控件,比如按钮,标签,你按上下左右选中的是那些控件,光标在它们上面移动,不能控制游戏中的画面,我以前在编写俄罗斯方块的时候碰上过···
追问
有两个标签和一个按钮,在ProcessCmdKey里写就能用了,编俄罗斯方块的时候也是在KeyDown事件里写的(能用)
追答
KeyData 获取的是获取 KeyDown 或 KeyUp 事件的键数据。
KeyCode 获取 KeyDown 或 KeyUp 事件的键盘代码。
你试试 KeyCode 我用写俄罗斯方块用的是KeyCode
例如 if(e.KeyCode == Keys.Down)
展开全部
挨个试试
Keys.Down
Keys.VolumeDown
Keys.PageDown
还要查查键盘的Down键是不是坏了。
这句不对吧,明明是Keys.Left
if (e.KeyData == Keys.Up)
p.MoveLeft();
Keys.Down
Keys.VolumeDown
Keys.PageDown
还要查查键盘的Down键是不是坏了。
这句不对吧,明明是Keys.Left
if (e.KeyData == Keys.Up)
p.MoveLeft();
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用KeyPress试一试你响应键的码。。看事件是否触发
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
先测试普通事件在合理环境下是否执行,然后在测试其他更深的问题
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询