Einzelnen Beitrag anzeigen

Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.453 Beiträge
 
Delphi 12 Athens
 
#6

AW: Komponente über Variable ansprechen

  Alt 16. Nov 2017, 08:59
Für sowas habe ich mir mal folgende Routine geschrieben:
Delphi-Quellcode:
class procedure TUtilities.ForAllComponentsOf<T>(Container: TComponent; DoProc: TProc<T>);
var
  cmp: TComponent;
begin
  for cmp in Container do
    if cmp is T then
      DoProc(T(cmp));
end;

Das würde man in deinem Fall (angenommen, es gibt keine anderen Shapes) innerhalb des Forms dann in etwa so benutzen:
Delphi-Quellcode:
  TUtilities.ForAllComponentsOf<TShape>(Self,
    procedure(Arg: TShape)
    begin
      Arg.Visible := False;
    end);
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat