单击图片时,我将如何播放单独的GIF



,所以我刚刚开始学习C#,目前正在研究一个简单的表单应用程序。我想做的是单击GIF时,它将切换到另一个GIF,然后在1秒钟后返回到原件。但是发生的事情是什么。它只是保持原始GIF。如果我尝试使用Message Box可以正常工作,那么它只是试图更改GIF的来源是问题。

private void pictureBox1_Click(object sender, EventArgs e)
{
    /* pictureBox2.Show();
       Thread.Sleep(1000);
       pictureBox2.Hide(); */
    pictureBox1.Image = WindowsLogin.Properties.Resources.PenguinEXE;
    Thread.Sleep(1000);
    pictureBox1.Image = WindowsLogin.Properties.Resources.PenguinIdle;
}

我也尝试使用ShowHide方法,但这也不起作用。

您可以使用异步/等待。

将您的方法标记为async,并使用await Task.Delay(1000);代替Thread.Sleep(1000);

async private void pictureBox1_Click(object sender, EventArgs e)
{
    pictureBox1.Image = WindowsLogin.Properties.Resources.PenguinEXE;
    await Task.Delay(1000);
    pictureBox1.Image = WindowsLogin.Properties.Resources.PenguinIdle;
}

最新更新