点击按钮弹出一个窗体,窗体里的计算量比较大,所以弹出的速度比较慢,想在点击按钮的同时显示一个进度条,但是进度条怎么也不显示,一直到窗体里的计算都完成了它才显示!把显示进度条的操作放到其它线程也不好用,希望各位帮帮我!部分代码如下: Thread th = new Thread(new ThreadStart(processShow));
//th.IsBackground = true;
th.Start();
CheckClient.ContentCompare cc = new ContentCompare();
cc.ShowDialog();我只需要点击按钮同时显示进度条就行!
//th.IsBackground = true;
th.Start();
CheckClient.ContentCompare cc = new ContentCompare();
cc.ShowDialog();我只需要点击按钮同时显示进度条就行!
反了。应该是:主线程Show进度条,开新线程执行你的代码。如下:processShow();//主线程Show进度条
Thread th = new Thread(new ThreadStart(处理业务数据方法));//开新线程执行你的代码。
th.IsBackground = true;
th.Start();
Thread th = new Thread(new ThreadStart(处理业务数据方法));//开新线程执行你的代码。
th.IsBackground = true;
th.Start();
processShow();//主线程Show进度条
-------------------------------------
那你可以在这个 弹出新窗口 里面 Show进度条,在开新线程执行你的代码呀。你要明白这个思路。
不是说在一定要在哪个界面或线程的里做。
解决这个问题,可以使用委托来处理,在.net2.0中还可以用backgroundworker类。 backgroundworker类是.net 2.0里新增加的一个类,对于需要长时间操作而不需要用户长时间等待...* * 作者:周公 * backgroundworker类是.net 2.0里新增加的一个类,对于...
http://blog.csdn.net/zhoufoxcn/archive/2007/10/19/1832819.aspx
Thread th = new Thread(new ThreadStart(processShow));
th.IsBackground = true;
CheckClient.ContentCompare cc = new ContentCompare();
th.Start();
Application.DoEvent();
cc.ShowDialog();