Турбо PowerSystools StExport событие в Delphi - PullRequest
0 голосов
/ 16 апреля 2009

Я использую stExport TurboPower из пакета systools. Использование его для экспорта набора данных. Это прекрасно работает. Класс делает доступным FOnExportProgress. Этот класс не имеет визуального компонента, и поэтому нет инспектора объектов, который бы просто дважды щелкал и заставлял Delphi создавать событие для меня. Кто-нибудь может привести простой пример того, как создать событие вручную ??

Для большинства визуальных компонентов Delphi предоставляет это для вас. Пример:

procedure TForm1.Button1Click(Sender: TObject);
begin
 //code here
end;

Как создать это вручную.

Я включаю немного класса ниже, который относится к событию.

type
  TStExportProgressEvent = procedure (Sender : TObject; Index : Integer;
    var Abort : Boolean) of object;

FOnExportProgress : TStExportProgressEvent;
    FOnQuoteField : TStOnQuoteFieldEvent;

if Assigned(FOnExportProgress) then
        FOnExportProgress(self, Count, Abort);

Как вручную назначить OnExportProgress.

Пожалуйста, включите простой пример!

Спасибо.

1 Ответ

1 голос
/ 16 апреля 2009

Предполагая, что все это происходит внутри вашей формы

type
  TForm1 = class(TForm)
  published
    procedure FormCreate(Sender: TObject);
  private
    FMyExport : TStDBtoCSVExport;
    procedure TForm1.MyExportProgressHandler(Sender : TObject; Index : Integer;
                                             var Abort : Boolean);        
  end;

procedure TForm1.Create(inOwner);
begin
  FMyExport := TStDBtoCSVExport.Create;
  FMyExport.OnExportProgress := MyExportProgressHandler;
end;

procedure TForm1.MyExportProgressHandler(Sender : TObject; Index : Integer;
                                         var Abort : Boolean);
begin
  { anything you like }
end;
...