Don0Choa
Messages postés104Date d'inscriptiondimanche 29 octobre 2000StatutMembreDernière intervention12 décembre 2005
-
6 mars 2005 à 13:47
japee
Messages postés1727Date d'inscriptionvendredi 27 décembre 2002StatutModérateurDernière intervention 6 novembre 2021
-
7 mars 2005 à 00:33
Bonjour,
voila je crée dynamiquement plusieur TLabel, pour les diferancier des autres labels du programme je leu attribut un Tag:=1 ...
Cela devrait normalement me permettre au moment venu d'effacer tous ces labels j'ai donc ce code pour les effacer :
for i:=0 to ComponentCount-1 do
if Components[i].Tag=1 then Components[i].Free;
Le probleme c'est qu'a chaque fois j'ai une erreur dy type : List Index of bounds(20)
et apres ca la boucle s'arrete ce qui fait qu'il me reste encore un tas de label.
Voial j'espere avoir été clair
Alors si uelqu'un a une solution a mon probleme... merci :D
japee
Messages postés1727Date d'inscriptionvendredi 27 décembre 2002StatutModérateurDernière intervention 6 novembre 20218 6 mars 2005 à 16:33
Heu... l'explication :
Si ta boucle commence par l'index 0, la suppression du composant fausse la donne : l'étendue de la boucle reste identique, mais le nombre de composants a diminué. Il y aura donc forcément dépassement d'index.
Don0Choa
Messages postés104Date d'inscriptiondimanche 29 octobre 2000StatutMembreDernière intervention12 décembre 2005 6 mars 2005 à 17:42
Hm euh... en fait j'ai encore un ptit problème,
maintenant quand j'éxécute cette procédure j'ai pratiquement toujours des Abstract Error ou Access violation ...
T'as une idée du probleme??
++
Vous n’avez pas trouvé la réponse que vous recherchez ?