看了渔翁的这篇博客
http://blog.csdn.net/knight94/archive/2006/05/27/757351.aspx
之后还是不懂已知类Download是用于下载东西的
在Form窗体中要如何更新ProgressBar呢?
因为下载过程中肯定要传递2个参数(文件当前大小和文件的总大小)给Form中的ProgressBar 所以感到束手无策啊
希望指点一下 谢谢Form1_Load(object sender,EventArgs e)
{
Download down = new Download("path","url")
Thread downThread = new Thread(new ThreadStart(down.Start));
downThread.Start();
}
如何让downThread线程边执行边传递2个参数给窗体呢
http://blog.csdn.net/knight94/archive/2006/05/27/757351.aspx
之后还是不懂已知类Download是用于下载东西的
在Form窗体中要如何更新ProgressBar呢?
因为下载过程中肯定要传递2个参数(文件当前大小和文件的总大小)给Form中的ProgressBar 所以感到束手无策啊
希望指点一下 谢谢Form1_Load(object sender,EventArgs e)
{
Download down = new Download("path","url")
Thread downThread = new Thread(new ThreadStart(down.Start));
downThread.Start();
}
如何让downThread线程边执行边传递2个参数给窗体呢
///Form窗体
public delegate UpdateProgress(int nvalue);B
//Download类
public delegate UpdateProgress(int nvalue);
是像A这样 还是 像B这样down.Start方法时带上(不会出现线程间操作无效: 从不是创建控件“progressBar1”的线程访问它吗)
{
public int max=200;
public int nvalue;
public void Start()
{
for(nvalue=0; nvalue<max;nvalue++)
{
Thread.Sleep(200);
}
}
}----------------------------------------------------
Form窗体中
Form1_Load(object sender,EventArgs e)
{
Download down = new Download();
Thread downThread = new Thread(new ThreadStart(down.Start));
downThread.Start();
}如何在执行过程中让nvalue和max的值拿给Progress用呢
多线程控制主窗体控件。