C#進度條彈出窗口線程創建
那麼現在就可以開始創建線程來運行,具體如下:
/// < summary>
/// Sub thread function
/// < /summary>
private
void
ThreadFun()
{
MethodInvoker mi =
new
MethodInvoker( ShowProcessBar );
this
.BeginInvoke( mi );
Thread.Sleep( 1000 );//Sleep a while to show window
bool
blnIncreased =
false
;
object
objReturn =
null
;
do
{
Thread.Sleep( 50 );
objReturn =
this
.Invoke(
this
.myIncrease,
new
object
[]{ 2 } );
blnIncreased = (
bool
)objReturn ;
}
while
( blnIncreased );
}
注意以上,在打開進度條窗體和增加進度條進度的時候,一個用的是BeginInvoke,一個 是Invoke,這裡的區別是BeginInvoke不需要等待方法運行完畢,而Invoke是要等待方法運行 完畢。還有一點,此處用返回值來判斷進度條是否到頭了,如果需要有其他的控制,可以類 似前面的方法來進行擴展。
啟動線程,可以如下:
Thread thdSub =
new
Thread(
new
ThreadStart( ThreadFun ) );
thdSub.Start();
這樣,一個用模式打開進度條窗體就做完了。