C# 如何移动根据他所面对的方向更改图像的图片框?

C# How do I move a picturebox that changes images depending on the direction hes facing?

使用visual studio 2015 我用一个图片框作为播放器,让它上下左右移动。当图片框移动时,它会收缩,然后看起来就像传送一样。这不是它应该做的。每当我按下 wasd 键时,如何正确地更改图片框?

if (e.KeyCode == Keys.D)
{
    x += 6;
    playerBox.Image = Properties.Resources.playerRight;
}

//向右移动播放器并更改图像

只需添加/减去,图片框顶部和左侧:

if (e.KeyCode == Keys.D)
{
    playerBox.Left += 6;
    playerBox.Image = Properties.Resources.playerRight;
}

如果方向没有改变,为了避免每次都改变照片,你可以这样做:

if (e.KeyCode == Keys.D)
{
    playerBox.Left += 6;
    if((Keys)playerBox.Tag!=e.KeyCode)
    playerBox.Image = Properties.Resources.playerRight;
}

你当然必须为 playerBox.Tag 设置一些初始值,否则你会得到一个错误,因为它不能转换为 Keys