unit Unit1;interfaceuses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs;type
  TForm1 = class(TForm)
    procedure FormCreate(Sender: TObject);/////////////////////////////////////////////////////////////////////////////
  TClientDataThread=class(TThread)   //为什么在此处定义的线程老是出错拉~~~~~~~~~~~
////////////////////////////////////////////////////////////////////
  private
    { Private declarations }
  public
    { Public declarations }
    ListBuffer:tStringList;
    TargetList:tStrings
    Procedure SynchAddDataToControl;
    constructor Create(CreateSuspended:Boolean)
    Procedure Execute;override;
    procedure Terminate;
  end;var
  Form1: TForm1;implementation{$R *.dfm}Constructor TclientDataThread.create(createSuspended:Boolean);
var
  ListBuffer:tStringList;
begin
  inherited Create(CreateSuspended);
  FreeOnTerminate:=True;
  ListBuffer:=TStringList.Create;
end;Procedure TclientDataThread.Terminate;
var
  ListBuffer:tStringList;
begin
  ListBuffer.Free;
  inherited;
end;Procedure TClientDataThread.execute;
begin
  Synchronize(SynchAddDataToControl);
end;Procedure TClientDataThread.SynchAddDataToControl;
var
TargetList:tStrings;
begin
  TargetList.AddStrings(ListBuffer);
end;procedure TForm1.FormCreate(Sender: TObject);
beginend;end.

解决方案 »

  1.   


      TForm1 = class(TForm)
        procedure FormCreate(Sender: TObject);
      end;/////////////////////////////////////////////////////////////////////////////
      TClientDataThread=class(TThread)   //FORM1类定义还没结束
    ////////////////////////////////////////////////////////////////////
      private
        { Private declarations }
      public
        { Public declarations }
        ListBuffer:tStringList;
        TargetList:tStrings
        Procedure SynchAddDataToControl;
        constructor Create(CreateSuspended:Boolean)
        Procedure Execute;override;
        procedure Terminate;
      end;
      

  2.   

    移到这里.. 
    TForm1 = class(TForm)