winforms 如何在windows窗体应用程序上获得按键?

vohkndzv  于 2022-11-30  发布在  Windows
关注(0)|答案(1)|浏览(216)

我试图让图片移动每当我按下“a”。我正在使用这个功能:

void Form1_KeyPress(object sender, KeyPressEventArgs e)
        {
            if(e.KeyChar == 65)
            {
                peanut.Location = new System.Drawing.Point(0, 0);
            }
        }

在函数上方,如果有帮助的话,它说0引用。另外,“花生”是图片框的名称。
当使用花生.位置=新建System.图纸.点(0,0);当窗体加载时,它就可以工作了。我认为问题在于如何获得键输入,而不是如何移动图片。
我试着使用KeyPress函数,但是由于某种原因,它不起作用。这可能是因为e.KeyChar 65不是A,但是如果它不是,谁能给我一个所有值和与它们相关的键的列表吗?

ezykj2lf

ezykj2lf1#

尝试在窗体的load事件中将窗体的KeyPreview设置为true,如下所示:

private void Form1_Load(object sender, EventArgs e)
{
    this.KeyPreview = true;
}

此外,如果您要在按下具有值97的字母a时移动图片框,请尝试以下操作:

void Form1_KeyPress(object sender, KeyPressEventArgs e)
    {
        if(e.KeyChar == 97)
        {
            peanut.Location = new System.Drawing.Point(0, 0);
        }
    }

相关问题