【问题标题】:How can i detect which Arrow Key was pressed last on my keyboard如何检测键盘上最后按下的箭头键
【发布时间】:2021-12-15 04:04:21
【问题描述】:

我想在 Windows 窗体中制作蛇游戏,但不知道如何检测键盘的输入。 我已经阅读了一些解决方案,其中大多数看起来都是这样的

private void _calendar_PreviewKeyDown(object sender, PreviewKeyDownEventArgs e)
                {
                    switch (e.KeyCode)
                    {
                        case Keys.Down:
                        case Keys.Right:
                            //action
                            break;
                        case Keys.Up:
                        case Keys.Left:
                            //action
                            break;
                    }
                }

但我真的不知道如何实现这样的事情,因为我有一个循环,我需要检测最后按下哪个箭头键。当我尝试调用该功能时,我不知道我必须给它什么参数。

【问题讨论】:

    标签: c# windows input arrow-keys


    【解决方案1】:

    您需要捕获您拥有蛇的对象上的键事件。所以当这是一张图片时,需要在图片的keydown事件上做:

    选择图片框,在属性(右下角)中选择您的事件。双击 KeyDown。现在您将看到如下代码。

    private void PictureBox1_KeyDown(object sender, KeyEventArgs e)
    {
    
    }
    

    您可以从这里开始实施。无需循环!

    同时在游戏中,确保图片框具有焦点。如果这不是一个选项,您可以考虑在表单本身上实现该事件。

    【讨论】:

      猜你喜欢
      • 2016-11-11
      • 2013-02-04
      • 1970-01-01
      • 2011-08-01
      • 2018-09-16
      • 2014-09-03
      • 1970-01-01
      • 2012-12-09
      相关资源
      最近更新 更多