我有一个 windows 窗体对话框,它在单击按钮后会执行更长的时间。 因为这需要一段时间,所以我想在对话框上显示一个动画(动画 gif、avi 或其他)。我怎样才能做到这一点。我需要一个自己的线程吗(我没有使用线程的经验)? 你能给我一个代码片段如何实现这个吗?
最佳答案
您可以使用普通的 PictureBox 控件显示动画 GIF,并且可以在 Ajaxload 找到一些有用的动画 GIF。 .
但是,如果您在 UI 线程上执行操作,程序将卡住直到完成。
为防止这种情况,请使用 BackgroundWorker ,像这样:
将 BackgroundWorker 组件添加到您的表单。
处理它的 DoWork
事件并在那里执行您的操作。
处理 RunWorkerCompleted
事件并隐藏 PictureBox。
当您要开始操作时,显示 PictureBox,然后调用 RunWorkerAsync 方法。
关于c# - 在 Windows 窗体上的较长过程中显示动画,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3265089/