Data.Win.ADODB.TCustomADODataSet.OnFetchProgress
Delphi
property OnFetchProgress: TFetchProgressEvent read FOnFetchProgress write FOnFetchProgress;
C++
__property TFetchProgressEvent OnFetchProgress = {read=FOnFetchProgress, write=FOnFetchProgress};
Propriétés
Type | Visibilité | Source | Unité | Parent |
---|---|---|---|---|
event | published | Data.Win.ADODB.pas Data.Win.ADODB.hpp |
Data.Win.ADODB | TCustomADODataSet |
Description
Se produit périodiquement pendant une opération asynchrone de récupération de données.
Ecrivez un gestionnaire d'événement OnFetchProgress pour effectuer des actions spécifiques pendant une opération asynchrone de récupération de données. L'événement OnFetchProgress est déclenché périodiquement pendant la récupération de données pour informer de son avancement. Créez un gestionnaire pour cet événement afin de réagir à cette notification périodique, par exemple pour donner à l'utilisateur une indication visuelle de la progression de la récupération des données.
DataSet est le composant ensemble de données ADO qui a déclenché l'événement OnFetchProgress. Ce composant ensemble de données contient également l'ensemble d'enregistrements en question.
Progress indique le nombre d'enregistrements qui ont été reçus depuis le début de la récupération de données.
MaxProgress indique le nombre total d'enregistrements à récupérer.
Progress et MaxProgress s'utilisent ensemble pour obtenir des pourcentages d'achèvement. Par exemple, Progress divisé par MaxProgress et multiplié par 100 donne le pourcentage d'achèvement de lecture de données.
procedure TForm1.ADODataSet1FetchProgress(DataSet: TCustomADODataSet; Progress, MaxProgress: Integer; var EventStatus: TEventStatus);
begin
Caption := 'Percent complete: ' +
IntToStr(Trunc(Progress / MaxProgress * 100)) + '%';
Application.ProcessMessages;
end;
void __fastcall TForm1::ADODataSet1FetchProgress(TCustomADODataSet *DataSet, int Progress, int MaxProgress, TEventStatus &EventStatus)
{
Caption = "Percent complete: " +
IntToStr(Trunc(Progress / MaxProgress * 100)) + "%";
Application->ProcessMessages;
}