Data.DB.TIDispatchField.Create

De RAD Studio API Documentation
Aller à : navigation, rechercher

Delphi

constructor Create(AOwner: TComponent); override;

C++

__fastcall virtual TIDispatchField(System::Classes::TComponent* AOwner);

Propriétés

Type Visibilité  Source Unité  Parent
constructor public
Data.DB.pas
Data.DB.hpp
Data.DB TIDispatchField

Description

Create crée et initialise un composant champ IDispatch.

La plupart des applications ne créent pas explicitement des instances de TIDispatchField. Au lieu de cela, les composants champ sont créés automatiquement, comme des composants champ persistants définis dans l'éditeur de champs à la conception, ou comme des composants champ dynamiques créés automatiquement par l'ensemble de données.

Create définit la propriété DataType à ftIDispatch. Le paramètre AOwner spécifie le composant (généralement un ensemble de données) qui devient le nouveau propriétaire du champ. Le propriétaire est responsable de la libération du composant.

Dans le cas rare où vous devez créer un composant champ persistant à l'exécution, appelez Create pour créer et initialiser une instance de TIDispatchField. Après avoir instancié un TIDispatchField, associez-le à un champ spécifique en affectant le nom du champ à sa propriété FieldName. Attribuez à l'instance de TIDispatchField un identificateur unique dans la propriété Name. Indiquez où le champ apparaît dans la collection des champs en affectant une valeur ordinale à la propriété Index. Associez l'objet TIDispatchField à un composant ensemble de données en définissant sa propriété DataSet.

L'exemple suivant crée un objet TIDispatchField pour un champ nommé IDispatch accédé via un TQuery nommé Query1.



var
T: TIDispatchField;
begin
Query1.Close;
T := TIDispatchField.Create(Query1);
T.FieldName := 'IDispatch';
T.Name := Query1.Name + T.FieldName;
T.Index := Query1.FieldCount;
T.DataSet := Query1;
Query1.FieldDefs.UpDate;
Query1.Open;
end;



TIDispatchField *T;
Query1->Close();
T = new TIDispatchField(Query1);
T->FieldName = "IDispatch";
T->Name = Query1->Name + T->FieldName;
T->Index = Query1->FieldCount;
T->DataSet = Query1;
Query1->FieldDefs->UpDate();
Query1->Open();



Voir aussi