Form1 oder acDateiSpeichern ist dann wohl nil/ungültig.
Die Zuweisung an die Action acDateiSpeichern löst eine Übertragung des Enabled-Status auf Controls, die diese Action als Action eingebunden haben aus. Und da geht's schief (
Unit System.Action):
Delphi-Quellcode:
procedure TContainedAction.SetEnabled(Value: Boolean);
var
I: Integer;
begin
if Value <> FEnabled then
begin
if Assigned(ActionList) then
begin
if ActionList.State = asSuspended then
begin
FEnabled := Value;
Exit;
end
else if (ActionList.State = asSuspendedEnabled) then
Value := True;
end;
for I := 0 to ClientCount - 1 do
if Clients[I] is TContainedActionLink then
TContainedActionLink(Clients[I]).SetEnabled(Value); // <<<<<<<<<<<<<<<<<<<<<<<<<<<
FEnabled := Value;
Change;
end;
end;
Wenn mir jetzt jemand verraten könnte, wie ich an den Namen des Controls, das mittels Client[i] mit der Action verbunden ist, rankomme...