C#Windows窗体PictureBox随键(w、a、s、d)移动不起作用,因为选择错误?(编码新手)

C#Windows窗体PictureBox随键(w、a、s、d)移动不起作用,因为选择错误?(编码新手),c#,winforms,keydown,C#,Winforms,Keydown,我计划做一个跳跃和跑步,所以如果我按W/a/S/D或类似的按钮,我需要一个移动的图片盒。我目前正在使用下面的源代码 我现在的问题是,我现在的表格中有很多按钮、其他图片框、文本框等,如果我现在按下按钮W,我的图片框的坐标不会变高,因为我认为其他按钮中的一个被选中了,有人知道如何修复吗? 我在一个新的文件中尝试了源代码,没有任何其他按钮、文本框等,它工作起来没有任何问题 private void Form1_KeyDown(object sender, KeyEventArgs e) {

我计划做一个跳跃和跑步,所以如果我按W/a/S/D或类似的按钮,我需要一个移动的图片盒。我目前正在使用下面的源代码

我现在的问题是,我现在的表格中有很多按钮、其他图片框、文本框等,如果我现在按下按钮W,我的图片框的坐标不会变高,因为我认为其他按钮中的一个被选中了,有人知道如何修复吗? 我在一个新的文件中尝试了源代码,没有任何其他按钮、文本框等,它工作起来没有任何问题

private void Form1_KeyDown(object sender, KeyEventArgs e)
    {
        if (e.KeyCode == Keys.W)
        {
            pictureBox2.Top -= 100;
        }
    }

您应该将
表单的
KeyPreview
属性设置为
true
,以便在按键到达控件之前获得它们

this.KeyPreview = true;

阅读更多内容

您需要将表单的
键预览
设置为True,以便在选择表单中的其他对象时运行
表单1\u键下

对标题中的拼写错误表示抱歉。如果您想修复任何问题,可以再次编辑您的帖子。是否设置了断点并进行了调试?@Chetan Ranpariya yesi尝试了“pictureBox2.BringToFront();”但没有更改