关于类的入门例子(8): 遍历窗体中所有控件的函数


//显示窗体中所有控件的函数

function GetCtrls(Control: TWinControl; List: TStringList): Boolean;

var

  i: Integer;

  obj: TWinControl;

begin

  for i := 0 to Control.ControlCount-1 do

  begin

    obj := TWinControl(Control.Controls[i]);

    List.Add(obj.Name);



    //如果控件中包含其他控件, 则递归调用

    if obj.ControlCount > 0 then

    begin

      GetCtrls(obj, List);

    end;

  end;

  Result := True;

end;





//调用测试

procedure TForm1.Button1Click(Sender: TObject);

var

  list: TStringList;

begin

  list := TStringList.Create;

  GetCtrls(Self, list);   {调用函数}

  ShowMessage(list.Text); {显示窗体中所有控件的名称}

  list.Free;

end;


 
   

你可能感兴趣的:(函数)