Bonjour,

Avec Delphi Rio, je crée dans une boucle for des labels de manière dynamique. Je dois ensuite pouvoir les détruire avant de les créer à nouveau.

J'ai donc dans ma form des label1_1, label1_2, etc...

Pour les détruire, j'utilise une boucle for du style:


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
 
for i:=0 to Xcount-1 do
 begin
  for j:=0 to Ycount-1 do
  begin
   str:=IntToStr(i)+'_'+IntToStr(j);
   Lbl:=TLabel(FindComponent(format('lbl_%s',[str])));
   if assigned(Lbl) then Lbl.Free;
  end;
Ce code fonctionne sous Windows mais pas sous Android: Avec Android, quand je relance la création des labels, j'ai le message d'erreur indiquant que le premier label existe déjà!

J'ai essayé de remplacer "free" par "destroy" et là, c'est tout simplement le plantage de l'app android!

Comment puis-je détruire proprement ces labels?

Merci d'avance