gpt4 book ai didi

c# - 防止 WinForms PictureBox 动画 GIF 在处理过程中暂停?

转载 作者:太空宇宙 更新时间:2023-11-03 17:45:49 24 4
gpt4 key购买 nike

我有一个带有 2 个控件的表单。控件 1 有几个搜索条件,用户可以单击一个按钮开始搜索。控件 2 有一个将显示搜索结果的 GridView,还有一个带有动画 Gif 的 PictureBox。

控件 1 中有一个方法,它有一个嵌套的 foreach 循环,需要 5 分钟以上才能完成(取决于搜索条件,有时它几乎立即完成)。

我在 Control 2 上调用了一个方法,使 PictureBox 可见并且动画 Gif 开始运行。一旦 foreach 循环被击中需要一段时间,图像就会完全停止。每当我显示任何 MessageBoxes 时,图像都会再次开始运行(我认为这是因为 MessageBox 正在阻塞)。一旦 MessageBox 关闭,图像就会停止动画。

我想我需要利用一些线程,但我正在尝试的一切(ImageAnimator、Thread 调用调用 Invoke 的方法等)似乎都不起作用。任何提示我需要使用哪些事件/库才能完成这项工作?有什么好的例子可以效仿吗?

最佳答案

您长时间运行的代码在 GUI 线程中运行并阻塞内部消息循环,因此任何 GUI 都将停止。尝试在单独的工作线程中运行长时间运行的代码。

关于c# - 防止 WinForms PictureBox 动画 GIF 在处理过程中暂停?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4693996/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com