请问下面代码创建一个线程有什么错误码?编译不过,报错:[DCC Error] Unit1.pas(109): E2036 Variable requiredprocedure TForm2.IsTradingTimeTimerTimer(Sender: TObject);
begin
  IsTradingDayListView1.Items.Add.Caption := 'Hello';
  IsTradingDayListView1.Items.Add.SubItems[0] := 'World';
  IsTradingDayListView1.Items.Add.SubItems[1] := 'Hehe';
end;procedure TForm2.MulThreadIsTradingDayClick(Sender: TObject);
var
  ThreadID: DWORD;
  hThreadHandle: THandle;
begin
  hThreadHandle := CreateThread(nil,0,@IsTradingTimeTimerTimer,nil,0,ThreadID);
end;

解决方案 »

  1.   

    IsTradingTimeTimerTimer,这个过程不行,不要成员函数,要类级函数procedure my;
    beginend;procedure TForm1.DBGrid1CellClick(Column: TColumn);
    var
      ThreadID: DWORD;
      hThreadHandle: THandle;
    begin
      hThreadHandle := CreateThread(nil,0,@my,nil,0,ThreadID);
    end;
      

  2.   

    还要改一下是, 一般是FUN,参数为Pointer,反回值为 dword, stdcall调用, 如下面function MyThreadFun(p: Pointer): DWORD; stdcall;