使用Synchronize方法:
该方法用于同步访问VCL主线程所管理的资源,其方法的应用是:第一步是把访问主窗口或主窗口所包含构件对象的代码放到线程的一个方法中;第二步是在线程对象的Execute方法中,通过Synchronize方法使用该方法.
示例如下:
procedure THeater.Execute;
begin
Synchronize(update);
end;
procedure THeater.update;
begin
while shap.Height< 144do
begin
shap.Height:=shap.Height+1;
shap.top:=shap.top-1;
end;
end;
定义一个THeater线程,在主窗体创建两个线程对象实例,分别用于将主窗口中用Shap构件画出的两个温度计升温.在Execute方法中,通过Synchronize方法使用Update方法使线程同步.