function MyThreadFunc(Para: Pointer): integer; //注意:线程函数的形式是固定的。
var
pgb: TProgressBar;
begin
pgb:= Para;
//现在pgb就是指向一个ProgressBar对象的指针,你只要把你要操作的ProgressBar对象
//的指针作为Para参数传递过来就可以了。
pgb.Position:= 0;
end;
procedure btnStartClick(Sender: TObject);
var
P1, P2: LongWord;
Para: Pointer;
begin
//在这里将你要操作的ProgressBar对象的指针给Para。
Para:= ............;
BeginThread(nil,0,MyThreadFunc,Para,P1,P2);
//此时新的线程已经开始运行,当中运行的代码就是你的线程函数(MyThreadFunc)中的代
//码。BeginThread新起线程后立即就返回了,所以这里以后的代码仍然继续运行。
end;