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

时间:2018-02-24 16:37:32

标签: c# winforms keydown

我打算做一个Jump and Run,所以如果我按W / A / S / D或类似的东西,我需要一个移动的pictureBox。我目前正在那里使用源代码。

我现在遇到的问题是,我现在的Form1中有很多按钮,其他相框,文本框等,如果我现在按下按钮W,我的图片框将不会更高坐标,因为我认为其他按钮等之一被选中,有人知道如何解决这个问题吗? 我在没有任何其他按钮文本框等的新文件中尝试了源代码,并且它没有任何问题。

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

2 个答案:

答案 0 :(得分:2)

您应该将KeyPreview的{​​{1}}属性设置为form,这样您就可以在到达控件之前获得键击。

true

了解更多here

答案 1 :(得分:0)

您需要将Form的KeyPreview设置为True,以便在选择表单中的其他对象时运行Form1_KeyDown