Hi,
ich benutze die
Unit TypInfo, um die Sichtbarkeit von bestimmten Komponenten in einer Schleife setzen zu können.
Dies geschieht mit folgendem Code, welcher allerdings in den markierten Zeilen (NICHT in der Funktion) eine Execption verursacht. Warum ?
Delphi-Quellcode:
{$M+}
procedure TfrmMain.SetVisibleValue(aObject: TObject ; aVisible : Boolean);
var Info : PPropInfo;
begin
Info := GetPropInfo(aObject, 'Visible');
if Assigned(Info) then
SetOrdProp(aObject, 'Visible', Integer(aVisible));
end;
{$M-}
[...]
for i := 0 to ComponentCount - 1 do
begin
with Components[i] do
begin
if (Tag and 2) > 0 then
--> SetVisibleValue(Components[i], True) <--
else
--> SetVisibleValue(Components[i], False); <--
end;
end;
[...]