ControlCount
Controls
ComponentCount
Components
TComponent.Classname
TComponent.[..]
以及TComponent的其他一些类方法.

解决方案 »

  1.   

    Form1.ControlCount 为窗口Form1内控件总数
    用Form1.Controls[Index]可以访问所有FORM1中的控件。
      

  2.   

    主窗体的panel中有几个DLL非模态的窗口,我想列出来,用菜单进行几个DLL窗体间的切换,
    常规的方法是不行的,我试过多种方法.还是不行.一句话不是高手是不可能解决的,很希望有人能提出建议
      

  3.   

    我指的是把DLL非模态的窗口的句柄赋给panel并已实现了,
      

  4.   

    你这样做很危险Delphi有自己的一套机制管理元件之间的Owner关系和Control之间的父子关系,
    象你这样直接把DLL中的一个窗口放在Panel上,就要自己时刻小心,不要发生
    什么释放了不该释放的资源等等问题,祝你好运。你的问题和你后来的描述似乎根本就文不对题。var
      i: Integer;
      comp: Tcomponent;
      parentclass: TClass;  for i := 0 to Form1.ComponentCount - 1 do
      begin
        Comp := Form1.Components[i];
        //可用的方法如下:
       ShowMessage(Comp.ClassName);
       ShowMessage(Comp.Name);
       ParentClass := Comp.ClassParent;
       while not(ParentClass is TClass) do
       begin
         ShowMessage(ParentClass.Classname);
         ParentClass := ParentClass.ClassParent;
       end;
       if Comp is TWinControl then
         ShowMessage(TWinControl(Comp).Handle);
       ...
      end;