나는 픽스 박스 안에서 임의의 방향으로 gif를 움직이는 프로그램을 가지고있다. 그러나 함수가 호출되면 gif는 멈출 것이다. 그러나, 그림 상자를 이동하려면 keyDown 함수를 사용하여 상자를 이동할 때 애니메이션 유지됩니다. 움직이는 동안 어떻게 움직일 수 있습니까?애니메이션 GIF를 일시 중지하지 않고 어떻게 이동할 수 있습니까?
이것은 내가 gif를 얼려서 무작위로 움직이기 위해 사용했던 것입니다.
void Form1_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.A)
{
eventDuration = randomizer.Next(30, 70);
while (eventDuration != 0)
{
MoveLeft();
eventDuration = eventDuration - 1;
Thread.Sleep(15);
}
}
}
private void MoveLeft()
{
_y = picPicture.Location.Y;
_x = picPicture.Location.X;
picPicture.Location = new System.Drawing.Point(_x - 1, _y);
}
그러나 이것을 사용하면 A 키를 누른 채로 있어도 gif가 정지하지 않고 부드럽게 움직입니다. 이 상수 사용자 입력을 필요로하기 때문에 첫 번째는
void Form1_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.A)
{
MoveLeft();
}
}
private void MoveLeft()
{
_y = picPicture.Location.Y;
_x = picPicture.Location.X;
picPicture.Location = new System.Drawing.Point(_x - 1, _y);
}
가 어떻게 GIF를 일시 중지하지 않고 임의의 거리 내 그림 상자를 이동할 수 있습니다
이동 방향으로 자율적 동안 나는이 방법을 사용할 수 없습니다?