Réponse acceptée !
J'ai trouvé une autre solution en utilisant TSringList.
En effet, les listes d'énumérés en question
sont destinées à faciliter une maintenance de programme. Le fait de rajouter des numéros d'ordre à côté amoindri la lisibilité du code à modifier éventuellement ou même pour un simple ajout.
J'ai donc chercher à me passer de cette numérotation manuelle:
Je procède ainsi:
Code Delphi :
VAR ListEnum : TStringList;
...
For ii := Ord(Low(TE1)) to Ord(High(TE1)) do
ListEnum.Add(GetEnumName(TypeInfo(TE1),ii));
For ii := Ord(Low(TE2)) to Ord(High(TE2)) do
ListEnum.Add(GetEnumName(TypeInfo(TE2),ii));
L'index d'un élément n'est plus un problème!
Mais je ne trouve pas que le code est vraiment propre,
je cherche donc une autre solution en essayant d'utiliser directement les possibilités de la RTTI
Quant à XE2, à part les possibilités d'utiliser succ et pred, je ne trouve pas grand chose de nouveau
Jean_Jean