zoukankan      html  css  js  c++  java
  • 典型的多线程操作界面的例子

     1public partial class Form1 : Form
     2{
     3        public Form1()
     4        {
     5            InitializeComponent();
     6        }

     7        private void button1_Click(object sender, EventArgs e)
     8        {
     9            this.progressBar1.Maximum = 9000;
    10            progressBar1.Minimum = 0;
    11            progressBar1.MarqueeAnimationSpeed = 1000;
    12            Thread tt = new Thread(new ThreadStart(LongProcess));
    13            tt.IsBackground = true;
    14            tt.Start();
    15        }

    16        delegate void UpProgressDelegate(int value);
    17        void ProgressIncrease(int value)
    18        {
    19            this.progressBar1.Value = value;
    20        }

    21        void LongProcess()
    22        {
    23            for (int i = 0; i < 9000; i++)
    24            {
    25            //Do something 
    26            Thread.Sleep(1); 
    27              //Porogress Increase 
    28            if (progressBar1.InvokeRequired)
    29            {
    30                progressBar1.Invoke(new UpProgressDelegate(ProgressIncrease),new object[] { i });
    31            }

    32            else
    33            {
    34                ProgressIncrease(i);
    35            }

    36        }

    37    }
     
    38}

     

  • 相关阅读:
    .NET Web应用配置本地IIS(实现Visual Studio离线运行与调试)
    Windows10 IIS Web服务器安装配置
    Visual Studio 2022 Preview设置简体中文
    nlp中各中文预训练模型的输入和输出
    numpy和Pytorch对应的数据类型
    Zookeeper入门看这篇就够了
    做一个有温度的程序员
    Apollo 配置中心详细教程
    浅析 DDD 领域驱动设计
    把之前CompletableFuture留下的坑给填上。
  • 原文地址:https://www.cnblogs.com/right/p/1274681.html
Copyright © 2011-2022 走看看