Multithreading 如果线程正在进行,则Gif图像不设置动画

Multithreading 如果线程正在进行,则Gif图像不设置动画,multithreading,gif,Multithreading,Gif,我有一张有一个图片盒的窗体。我已经添加了.gif文件。这个表单是一个进度条,所以我在一个单独的线程中打开它,然后是一个主线程。我的问题是直到所有线程都完成gif图像才开始动画 请建议。下面是我的代码: private bool StartUploading() { objLoadingThread = new Thread(LoadProgressBar); objLoadingThread.Start(); .. .. .. .. S

我有一张有一个图片盒的窗体。我已经添加了.gif文件。这个表单是一个进度条,所以我在一个单独的线程中打开它,然后是一个主线程。我的问题是直到所有线程都完成gif图像才开始动画

请建议。下面是我的代码:

private bool StartUploading()
{

    objLoadingThread = new Thread(LoadProgressBar);
    objLoadingThread.Start();
    .. 
    ..
    ..
    ..
    StopProgress = true;
}

// Progress bar
private void LoadProgressBar()
{
    objAlertForm = new AlertForm();
    objAlertForm.Show();
    objAlertForm.Refresh();
    while (!StopProgress)
    {
        for (int i = 0; i <= 100; i++)
        {
            objAlertForm.ProgressValue = i;
            if (StopProgress)
            {
                break;
            }
            Thread.Sleep(100);
        }
    }
    objAlertForm.Hide();
    StopProgress = false;
    objLoadingThread.Abort();
}

Sleep将使主线程休眠,而不是objLoadingThread线程


如果你需要一个延迟,你可以寻找一些大迭代的循环。

我现在不需要线程。拆下线后,请保持睡眠,否则它将无法工作。我试过了,看到第二个答案了吗