Ceci est une ancienne révision du document !


Les Property(s) pour les composants

Published

Récuperer le nom et type des properties published

var
   vProps: TPropInfoList;  //uses rttiutils
   vI:     integer;
   pProp:  PPropInfo;  // uses typinfo
   pType : PTypeInfo;
   oVal:   TIC_ConfValue; // perso
begin
   { FConfSet est l'objet dont on veut récupérer les properties }
   vProps := TPropInfoList.Create(FConfSet, tkProperties);
 
   for vI := 0 to vProps.Count - 1 do
   begin
      pProp := vProps.Items[vI];
      pType := pProp^.PropType;
      DebugLn('Prop : %s', [pProp^.Name]);
      DebugLn('Type : %s', [pType^.Name]);
   end;
end;       

Ressources:

Recuperer une property par son nom

   MonObjet := GetObjectProp(ObjetParent, 'NomDeLObjet') as TObject; 

A Savoir

Toutes les variable ne sont pas publiable.

Seuls les champs de type classe peuvent être published.
Pour les propriétés, toute propriété simple dont la taille est inférieure ou égale à un pointeur, peut être déclarée published: floats, integers, sets (avec moins de 32 éléments distincts), enumerateds, classes ou tableaux dynamiques (pas de propriétés array).

Source:https://www.freepascal.org/docs-html/ref/refsu37.html

RTTI

Ressources

Vous pourriez laisser un commentaire si vous étiez connecté.