进度条
来源:互联网 发布:wifi网络管理器 编辑:程序博客网 时间:2024/05/21 08:50
线程控件
在程序开发中,往往使用到多线程,通常我们是通过Invoke和委托来编写多线程如:
定义一个委托和调用的方法
public delegate void transfer(int value);
public void userMethod(int value) //往往value代表进度数值
{
//userMethod;
}
创建线路
for(int i=1;i<101;i++)
{
Invoke(transfer,i);
System.Threading.Thread.Sleep(100);
}
在程序开发中,往往使用到多线程,通常我们是通过Invoke和委托来编写多线程如:
定义一个委托和调用的方法
public delegate void transfer(int value);
public void userMethod(int value) //往往value代表进度数值
{
//userMethod;
}
创建线路
for(int i=1;i<101;i++)
{
Invoke(transfer,i);
System.Threading.Thread.Sleep(100);
}
在.net 2.0中添加了BackgroundWorker控件(内部也是通过委托来实现),存在于System.ComponentModel命名空间中
BackgroundWorker常用的有
WorkerReportsProgress属性:辅助线程是否报告进度。像做进度条时要设置为true。
workerSupportsCancellation属性:是否支持取消
RunWorkerAsync方法:开始线路,同时触发DoWork事件
DoWork事件:执行线路(不能调用任何Form中的成员变量)
ReportProgress方法:(需WorkerReportsProgress=true)可以通过此方法来报告进度(1-100)同时触发progressChange
ProgressChanged事件:(可以调用Form中的成员变量)
RunWorkerCompleted事件:dowork完成后自动触发此事件
BackgroundWorker常用的有
WorkerReportsProgress属性:辅助线程是否报告进度。像做进度条时要设置为true。
workerSupportsCancellation属性:是否支持取消
RunWorkerAsync方法:开始线路,同时触发DoWork事件
DoWork事件:执行线路(不能调用任何Form中的成员变量)
ReportProgress方法:(需WorkerReportsProgress=true)可以通过此方法来报告进度(1-100)同时触发progressChange
ProgressChanged事件:(可以调用Form中的成员变量)
RunWorkerCompleted事件:dowork完成后自动触发此事件
在制作进度条时,也可以使用.net提供的控件progressBar控件来作为介面的显示,ProgressBar中的有maxvalue、minvalue和value来设置
- 进度条
- 进度条
- 进度条
- 进度条
- 进度条
- 进度条
- 进度条
- 进度条
- 进度条
- 进度条
- 进度条
- 进度条
- 进度条
- 进度条
- 进度条
- 进度条
- 进度条
- 进度条
- January 20th Wednesday 2010
- 新手
- 测试
- PDA开发,DataGrid的使用
- Linux中Mount远程目录(自己整理了下)
- 进度条
- 再小谈backgroundWorker
- VS 调试心得
- UML类图,以及对象关系的总结
- Oracle 10g Logminer 研究及测试
- Hibernate3.3.2配置笔记
- uboot,nboot,eboot简要区别
- 理解Filter创建的过程
- errorC2471:cannot update program database vc90.pdb