更改图片框位置属性时,仍会显示旧图像

本文关键字:显示 图像 属性 位置 | 更新日期: 2023-09-27 18:31:08

我在另一个pictureBox有一个pictureBox。我尝试在地图上创建飞行飞机的模仿。我做了一个简单的循环来完成这个任务。代码:

for (var i = 0; i < 23; i++)
        {
                Fuel -= 1;
                Changed(i);               
        }
private void Changed(int a)
    {
        Thread.Sleep(350);
        pbPlane1.Location = new Point(525-(25*a), 235);
        pbPlane1.Refresh();
    }

所以在这种情况下,平面图像会随心所欲地移动,但旧图像也会显示出来,我不想要它。我尝试了几件事,但没有结果。我的代码有什么问题?

更改图片框位置属性时,仍会显示旧图像

您需要刷新地图图像,而不是刷新平面图像。代码应如下所示:

private void Changed(int a)
{
    Thread.Sleep(350);
    pbPlane1.Location = new Point(525-(25*a), 235);
    pbMap1.Refresh();      // refresh the background picturebox
}