Vcl.Controls.TWinControl.GetControls

De RAD Studio API Documentation
Aller à : navigation, rechercher

Delphi

function GetControls(AFilter: TControlEnumeratorFilter = []): TControlEnumerator;

C++

TControlEnumerator* __fastcall GetControls(TControlEnumeratorFilter AFilter = TControlEnumeratorFilter() );

Propriétés

Type Visibilité  Source Unité  Parent
function public
Vcl.Controls.pas
Vcl.Controls.hpp
Vcl.Controls TWinControl


Delphi

function GetControls(AFilter: TControlEnumeratorFilter = []): TControlEnumerator;

C++

TControlEnumerator* __fastcall GetControls(TControlEnumeratorFilter AFilter = TControlEnumeratorFilter() );

Propriétés

Type Visibilité  Source Unité  Parent
function public
Vcl.Controls.pas
Vcl.Controls.hpp
Vcl.Controls TWinControl


Description

GetControls renvoie le contrôle de la liste TControlList.

GetControls est l'implémentation en lecture protégée de la propriété Controls.

Exemple

Les exemples suivants montrent comment utiliser GetControls et TControlEnumeratorFilter dans le code.

Delphi

 for var ACtrl in Panel1.GetControls do
  begin
    // This gets all controls of 'Panel1'
  end;
 
  for var ACtrl in Panel1.GetControls([ceftEnabled]) do
  begin
    // This gets all enabled controls of 'Panel1'
  end;
 
  for var ACtrl in Panel1.GetControls([ceftVisible]) do
  begin
    // This gets all visible controls of 'Panel1'
  end;

Notez que l'énumérateur du contrôle par défaut est toujours l'énumérateur TComponent, donc si vous écrivez :

 for var ACtrl in Panel1 do
  begin
    // This gets all components of 'Panel1'
  end;

Vous énumérez en fait tous les composants possédés par l'instance (par exemple 'Panel1' dans notre exemple) et pas seulement ses contrôles.

Enumérez les contrôles d'un même objet à l'aide du code ci-dessous :

for var ACtrl in GetControls([ceftAll]) do
begin
end;

C++

Avec le code suivant, vous pouvez mettre à jour le libellé d'une fiche afin d'inclure le nom de classe de chaque contrôle entre crochets.

  String msg;
  for (auto ctl: GetControls(TControlEnumeratorFilter()))
  {
	msg += "[" + ctl->ClassName() + "]";
  }
  Caption = msg;

Voir aussi