Das ist aber sehr optimistisch, Du solltest zumindest prüfen, ob die entsprechende Komponente auch gefunden wurde.
Wenn die Funktion des Programms erfordert, daß das "Umbenennen" funktioniert, dann bringt soein IF nichts, wenn man das ELSE mit Fehlermeldung nicht mit einbaut.
Delphi-Quellcode:
Comp := FindComponent('Label' + inttostr(i));
if Assigned(Comp) and (Comp is TLabel) then
TLabel(Comp).Caption := 'Nummer' + inttostr(i)
else
// Fehlerbehandlung!
Aber wenn man nicht wirklich weiß was man macht, dan sollte man unbedingt von Hardlinks (
TEdit(...)
) verzichten und nur mit Softlinks (
... as TEdit
) arbeiten, denn fallen solche Fehler auf.
Wobei in der
VCL das Edit eh kein (public) Caption besitzt und der Compiler das bereits bemängeln sollte.
(FindComponent('Label' + IntToStr(i)) as TLabel).Caption := 'Nummer' + IntToStr(i);
Wenn es nicht gefunden wurde, oder es der falsche Typ ist, dann gibt es eine wunderschöne
Exception. (und nicht nur eine komische Zugriffsverletzung)