Poni molta attenzione quando scandisci generalmente gli elementi di una lista, poichè il numero di elementi diminuisce di volta in volta (anche se, in questo caso, non mi sembra che si ricada in una situazione simile poichè la variabile Count è inizializzata manualmente).
L'approccio generico per la scansione con eliminazione dovrebbe essere, generalmente, percorso a rovescio per evitare "side effects":
Se generi molti bottoni, prevedi anche l'uso di una lista in cui memorizzarne i riferimenti durante la creazione: l'uso del metodo FindComponent rallenta sempre di più maggiore è il numero di componenti.codice:for i := Count downto 1 do TButton(FindComponent('Bottone' + IntToStr(i))).Free;
Ciao!![]()