zoukankan      html  css  js  c++  java
  • Winform中使用进度条的一个例子

    因为在winform程序中,UI线程负责界面相关的工作。

    Winform中使用进度条的方法有很多,可以直接创建一个新的线程Thread执行耗时的方法;也可以使用线程池。

    例如:

    //使用线程池异步执行longTime方法,不阻塞UI线程
    System.Threading.ThreadPool.QueueUserWorkItem(_ =>
    {
        DoSomething();
    }

    如果想使用进度条,可以模拟进度操作,在一个循环内,

    //使用线程池异步执行longTime方法,不阻塞UI线程
    System.Threading.ThreadPool.QueueUserWorkItem(_ =>
    {
        DoSomething();
        //模拟更新进度条
        UpdateProgress(total, i);
    }
    
    /// <summary>
    /// 模拟更新进度条
    /// </summary>
    /// <param name="total">总进度</param>
    /// <param name="value">当前进度</param>
    private void UpdateProgress(int total, int value)
    {
        this.BeginInvoke(new Action(() =>
        {
            this.progressBar1.Minimum = 0;
            this.progressBar1.Maximum = total;
            this.progressBar1.Value = value;
        }));
    }
  • 相关阅读:
    NYOJ 132(最长回文子串)
    NYOJ 148(斐数求余)
    NYOJ 97
    NYOJ 206
    NYOJ 520(最大素因子的序数)
    数据库大型应用解决方案总结(转)
    SQL好的写法(转)
    WebService如何调试及测试工具
    刪除windows服務方法
    GhostDoc(注释生成工具)使用方法
  • 原文地址:https://www.cnblogs.com/fanyong/p/3059080.html
Copyright © 2011-2022 走看看