Zitat von
griever:
ok bin mir sicher das das funktioniert aber gibt es keinen befehl in delphi der direkt den inhalt eines stringes als name umwandelt (außer das findcomponents) weil sonst kann ich auch gleich if string = 'abc' then abc(a,b); machen nur find ich das nicht "optional"
Was denkst du eigentlich, was FindComponent macht?
Das geht auch nur die in der Form registrierten Komponenten durch, welche auch in einer Art Array/Liste dort gespeichert sind.
Delphi-Quellcode:
function TComponent.FindComponent(const AName: string): TComponent;
var
I: Integer;
begin
if (AName <> '') and (FComponents <> nil) then
for I := 0 to FComponents.Count - 1 do
begin
Result := FComponents[I];
if SameText(Result.FName, AName) then Exit;
end;
Result := nil;
end;