Oder vielleicht auch so?
Delphi-Quellcode:
procedure Masken_ausblenden(akt_MaskID: String);
var
MaskeFeld, MaskeFeld2: TMaskeFeld;
begin
MaskeFeld := ObjectList_sichtbare_Masken.Find(MaskID); // sowas ist das Erste, was man sich baut - womöglich mit passendem Comperator
for MaskeFeld2 in ObjectList_sichtbare_Masken do
MaskeFeld2.Visible := MaskeFeld2 = MaskeFeld;
ObjectList_sichtbare_Masken.Clear;
ObjectList_sichtbare_Masken.Add(MaskeFeld);
end;
Ist gut gemeint (und ein toller Vorschlag) - nur das Visiblen passiert ggf. wo anders
daher ist es nicht so einfach
ich bin jetzt einfach wieder auf die alte for-Schleife umgestiegen, aber halt in Verbindung mit Generics
Delphi-Quellcode:
procedure Masken_ausblenden(akt_MaskID: String);
var
i : Integer;
MaskeFeld: TMaskeFeld;
begin
for i := Pred(ObjectList_sichtbare_Masken.Count) downto 0 do
begin
MaskeFeld := ObjectList_sichtbare_Masken.Items[i];
If MaskeFeld.NameID <> akt_MaskID then
begin
MaskeFeld.Visible := false;
ObjectList_sichtbare_Masken.Delete(i);
end;
end;
end;
mfg
Helmi
>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<