Si les objets contenus dans la liste ont un ancêtre commun qui a la propriété couleur alors effectivement tu peux caster sauvagement :
TNomDeLaClasseAncetre(liste.Items[i]).Couleur := clRed;
Si les objets contenus dans la liste ont assurément une propriété couleur (TColor) et qu'ils hérite directement ou pas de TPersistent, alors avec RTTI on peu valoriser directement: (cf. la FAQ)
SetOrdProp(liste[i], 'Couleur', clRed);
Enfin, si tes items sont tous des descendants de TComponent, préférer un TComponentList au TObjectlist car le TComponentList est, en plus, automatiquement notifié si un de ses items est libéré (.Free) par n'importe qui n'importe où.
Partager