TFmxObjectクラスのEnumObjectsメソッドを使うと、オブジェクトの子のオブジェクトに対して順番に処理を実行できます。
EnumObjectsメソッドは、引数に無名関数を受け取ります。
EnumObjects(
function(AObject: TFmxObject): TEnumProcResult
begin
end);
無名関数の引数AObjectは、子のオブジェクトです。
返値をTEnumProcResult.Stopとすると、処理は終了します。
TEnumProcResult.Continueを返すと、次のオブジェクトの処理に移ります。
サンプルコード
次のサンプルコードは、フォームに配置されているTEditコンポーネントのTextプロパティを’TEdit’にします。
procedure TForm1.FormCreate(Sender: TObject);
begin
EnumObjects(
function(AObject: TFmxObject): TEnumProcResult
begin
if AObject is TEdit then
begin
TEdit(AObject).Text := 'TEdit';
end;
Result := TEnumProcResult.Continue; // 処理を継続する
end);
end;
Pingback: Enumerar, recorrer, listar objetos de un TFMXObject | Puro Delphi