我在 C# 中有一个 Winforms 应用程序,它异步调用一个方法并使用回调。我想显示一个动画 gif,让最终用户知道工作正在完成。我想让动画 gif 悬停在表单的中心。
我该怎么做?
更新:谢谢。我想我缺少的步骤是使用图片框来保存 gif。下面似乎是在做显示 gif 的技巧,就像下面说的 jmatthews3865 我可以将 PictureBox 的可见属性设置为 false 以隐藏它。
private ShowAnimatedGif()
{
PictureBox pb = new PictureBox();
this.Controls.Add(pb);
pb.Left = (this.Width / 2) - (pb.Width / 2);
pb.Top = (this.Height / 2) - (pb.Height / 2);
pb.Image = Resources.AnimatedGifHere;
pb.Visible = true;
}
在您的表单中,只需将图像的可见属性设置为 false 即可。
从调用长时间运行的异步进程(button1_click 等)的事件中,将图像可见性属性设置为 true。事件触发,图像出现,异步进程运行,你的 ui 线程应该仍然响应。
在您的回调事件中将图像可见属性设置为 false 以指示该过程已完成。
我是一名优秀的程序员,十分优秀!