我正在尝试使用Indy在Delphi 2010中编写一个线程化的应用程序。这两个对我来说都是新手,我正在努力同步Vcl。我已经阅读了有关使用关键部分,TThread.Synchronize,TIdNotify等与Vcl进行同步的信息。
我想看一个如何使用TIdnotify的例子。就我而言,我正在尝试从线程更新TreeView。我已经搜索了组/论坛,但没有成功。
任何例子将不胜感激。
TIA

最佳答案

type
  TMyNotify = class(TidNotify)
  private
    FMyData: string;
  protected
    procedure DoNotify; override;
  end;

procedure TMyNotify.DoNotify;
begin
  FormMain.TreeView1.Items.Add(nil, FMyData);
end;

并在您的线程中:
var
  MyNotify: TMyNotify;
begin
  MyNotify := TMyNotify.Create;
  MyNotify.FMyData := 'A new node';
  MyNotify.Notify;

10-08 01:54