Zitat von
roderich:
dir fehlt ein Type-cast
(Feldnamenzuordnen1.FindComponent('Adress_' + IntToStr(i)) as TMenuItem).checked := true;
generell wäre man aber vor dem Type-cast auf der sicheren Seite mit der Abfrage
Delphi-Quellcode:
if (Feldnamenzuordnen1.FindComponent('Adress_' + IntToStr(i)) is TMenuItem) then
...
Jupp,
aber der
AS-Operator führt intern bereits ein
IS aus (und löst ggf. ein EInvalidCast aus), soweit ich weiss.
Daher sollte man. wenn man schon mit IS prüft, dann auch direkt type-casten, also so (ich würde mir dann das doppelte findcomponent sparen):
Delphi-Quellcode:
var
Comp: TComponent;
begin
Comp := Feldnamenzuordnen1.FindComponent('Adress_' + IntToStr(i));
if (Comp is TMenuItem) then
TMenuItem(Comp).Checked := True;
end;
mfG
mirage228