c# 进度条的使用(例子)[通俗易懂]

c# 进度条的使用(例子)[通俗易懂]2012-05-2320:21在用c#做WinFrom开发的过程中。我们经常需要用到进度条(ProgressBar)用于显示进度信息。这时候我们可能就需要用到多线程,如果不采用多线程控制进度条,窗口很容易假死(无法适时看到进度信息)。下面我就简单结合一个我写的例子给大家做一个介绍。首先看一下程序界面第一步:设计界面不说了…注意需要引用usingSyst

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定


2012-05-23 20:21

在用c#做WinFrom开发的过程中。我们经常需要用到进度条(ProgressBar)用于显示进度信息。这时候我们可能就需要用到多线程,如果不采用多线程控制进度条,窗口很容易假死(无法适时看到进度信息)。下面我就简单结合一个我写的例子给大家做一个介绍。
首先看一下程序界面
c# 进度条的使用(例子)[通俗易懂]

第一步:设计界面不说了…注意需要引用 using System.Threading;
第二步:定义一个代理,用于更新ProgressBar的值(Value)

  1.         //更新进度列表
  2.         private delegate void SetPos(int ipos);

第三步:进度条值更新函数(参数必须跟声明的代理参数一样)

  1.         private void SetTextMessage(int ipos)
  2.         {
  3.             if (this.InvokeRequired)
  4.             {
  5.                 SetPos setpos = new SetPos(SetTextMessage);
  6.                 this.Invoke(setpos, new object[] { ipos});
  7.             }
  8.             else
  9.             {
  10.                 this.label1.Text = ipos.ToString() + “/100”;
  11.                 this.progressBar1.Value = Convert.ToInt32(ipos);
  12.             }
  13.         }

第四步:函数实现

  1.         private void button1_Click(object sender, EventArgs e)
  2.         {
  3.             Thread fThread = new Thread(new ThreadStart(SleepT));//开辟一个新的线程
  4.             fThread.Start();
  5.         }

第五步:新的线程执行函数:

  1.         private void SleepT()
  2.         {
  3.             for (int i = 0; i < 500; i++)
  4.             {
  5.                 System.Threading.Thread.Sleep(100);//没什么意思,单纯的执行延时
  6.                 SetTextMessage(100 * i / 500);
  7.             }
  8.         }

到此一个简单的进度条程序做好了。简单吧。剩下就靠你自己改造喽。转载请注明一个出处吧。http://blog.csdn.net/gisfarmer谢谢了。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/234064.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • 网管必备工具_ps功能介绍与工具使用视频

    网管必备工具_ps功能介绍与工具使用视频http://book.51cto.com/art/200903/116214.htm 转载于:https://blog.51cto.com/netsecing/163178

  • vue父子组件传值props_vue子组件调用父组件的方法并传参

    vue父子组件传值props_vue子组件调用父组件的方法并传参vue页面结构在做项目的时候常常有这样的一个情况,这个页面的数据(比如:id号)要带到另一个页面去查询某个数据的详情等,传统的做法不是在url上加参数,cookie或者是现在H5的“sessionStorage”和“localStorage”上赋值,这是页面之间传递的方法。随着Angularjs,React,Vue的流行组件式的开发方式成为另一种不错的解决方案。最近就有一些小伙伴问我,vue组件之间是如何传递参数的?其实vue是有三种方式可以组件之间传递数据(props,组件通信,slot)..

    2022年10月30日
  • 二进制减法运算算法,基本逻辑实现法_二进制减法法则

    二进制减法运算算法,基本逻辑实现法_二进制减法法则今天捣鼓机器数的表示与运算,觉着能用加法进行减法的模拟运算,那么自然能用减法表示加法的运算。接着,在草稿纸上模拟了一下二进制的减法运算。很粗糙,限于时间原因,还没有把全部情况模拟完。核心规则是通过简单的或、与、异或运算与循环借位进行二进制数的减法。以后来补坑..学而不思则罔,思而不学则殆。…

  • Lamp架构_搭建java环境

    Lamp架构_搭建java环境1、LAMP分别代表什么?2、Apache/MySQL/PHP各自有什么作用?2.1Apache(httpd)—–像极了饭店前台2.2PHP-像极了服务生2.3MySQL数据库-像极了厨师3、LAMP架构是什么?-像极了饭店LAMP环境部署1、任务具体要求2、架构分析3、效果预览4、项目实施4.1环境准备4.2安装Apache(httpd)软件4.3安装PHP相关软件4.4安装MySQL数据库软件…

    2022年10月16日
  • Django(2)python虚拟环境virtualenvwrapper

    Django(2)python虚拟环境virtualenvwrapperpython虚拟环境虚拟环境(virtualenvironment),它是一个虚拟化,从电脑独立开辟出来的环境。通俗的来讲,虚拟环境就是借助虚拟机来把一部分内容独立出来,我们把这部分独立出来的东西

  • GG修改器修改钻石_gg是啥意思

    GG修改器修改钻石_gg是啥意思图就不上了,金钱、钻石和基因等修改,孤单亲测。工具:方法:一.打开GG修改器后选择六号特工二.内存范围:Ca1.钻石修改:进入角色—-选择草帽特工搜索:2500搜索类型:Q全选–修改–更多–增量填1切换下角色你会发现值变了返回搜索找到对应的值修改即可!改成-9999999992.金钱修改:进入关卡打死一个怪后搜索金钱的值搜索类型:Q直接修改即可!改成9999999993.基因修…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号