Bonjour à vous, cela fait longtemps que je cherche mais en vain. Je cherche une procédure comme suis mais qui me retourne les variables qui ne sont pas obligatoirement PROPERTY.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
function GetProperty(Const AnObject: TObject; Const Propriete : string) : Variant;
begin
// uses typinfo;
if IsPublishedProp(AnObject, Propriete) {and PropIsType(AnObject, Propriete, tkVariant)} then
   begin
   try
     result := GetPropValue(AnObject, Propriete);
     except
     result := NULL;
     end;
   end else
   result := NULL;
end;
Par exemple je voudrais récupérer le selected de la listbox1 (qui ne se trouve pas dans l'inspecteur d'objet)

si je fais
Code : Sélectionner tout - Visualiser dans une fenêtre à part
GetProperty(listbox1, 'selected')
.
Il me retournera rien du tout car il va trouver que selected n'est pas une property (ce qui est vrai).

Enfin, voilà. Merci a vous. Je suis presque sur que ma solution ne se trouve pas dans typinfo.

PS : Attention, je sais que getproperty retourne un variant, mais même en modulant complement mon getproperty adapté pour les object, cela ne me retourne que ce qui est property.