我有一段代码:
  MT:=TMyThread1.Create(false);
其中unit MyThread1;interfaceuses
  Classes,SysUtils;type
  TMyThread1 = class(TThread)
  private
    { Private declarations }
  protected
    procedure Execute; override;
    procedure myqry;
  end;implementation
uses HintExcel,QryAgentCre;
{ Important: Methods and properties of objects in visual components can only be
  used in a method called using Synchronize, for example,      Synchronize(UpdateCaption);  and UpdateCaption could look like,    procedure TMyThread1.UpdateCaption;
    begin
      Form1.Caption := 'Updated in a thread';
    end; }{ TMyThread1 }procedure TMyThread1.myqry;
var i:integer;
var t1,t2:real;
begin
i:=1;
QryAgentCreForm.myGetMonth;
with QryAgentCreForm.ADOQuery3 do
begin
  close;
  Parameters.ParamByName('caller').Value:=QryAgentCreForm.ADOQuery2.Fieldvalues['合同编号'];
  open;
  QryAgentCreForm.InitSG(QryAgentCreForm.StringGrid3,5);//初始化stringgrid3
  QryAgentCreForm.StringGrid3.RowCount:=recordcount+1;
  first;
  while not eof do
  begin
    QryAgentCreForm.StringGrid3.Cells[0,i]:=inttostr(i);
    QryAgentCreForm.StringGrid3.Cells[1,i]:=QryAgentCreForm.ADOQuery3.FieldValues['主叫号码'];
    with QryAgentCreForm.ADOQuery4 do
    begin
      close;
      Parameters.ParamByName('time1').Value:=QryAgentCreForm.time1;
      Parameters.ParamByName('time2').Value:=QryAgentCreForm.time2;
      Parameters.ParamByName('caller').Value:=QryAgentCreForm.ADOQuery3.FieldValues['主叫号码'];
      open;
      t1:=fieldbyname('合计').AsFloat;
      QryAgentCreForm.StringGrid3.Cells[2,i]:=FormatFloat('0.0',t1);
      close;
      Parameters.ParamByName('time1').Value:=QryAgentCreForm.time3;
      Parameters.ParamByName('time2').Value:=QryAgentCreForm.time4;
      open;
      t2:=fieldbyname('合计').AsFloat;
      QryAgentCreForm.StringGrid3.Cells[3,i]:=FormatFloat('0.0',t2);
      QryAgentCreForm.StringGrid3.Cells[4,i]:=FormatFloat('0.0',t1-t2);
    end;
    next;
    inc(i);
  end;
end;
end;procedure TMyThread1.Execute;
  { Place thread code here }
begin
Synchronize(myqry);
FreeOnTerminate:=true;
Terminate;
end;
end.可是为什么一执行这个线程后,整个程序就没有响应了?