基本类信息

此示例显示如何使用 ClassTypeClassParent 属性获取组件的祖先。它在表单 TForm1 上使用了一个按钮 Button1: TButton 和一个列表框 ListBox1: TListBox

当用户单击该按钮时,按钮类的名称及其父类的名称将添加到列表框中。

procedure TForm1.Button1Click(Sender: TObject) ;
var
  ClassRef: TClass;
begin
   ListBox1.Clear;
   ClassRef := Sender.ClassType;
   while ClassRef <> nil do
   begin
     ListBox1.Items.Add(ClassRef.ClassName) ;
     ClassRef := ClassRef.ClassParent;
   end;
end;

用户单击按钮后,列表框包含以下字符串:

  • TButton 的
  • TButtonControl
  • TWinControl
  • TControl
  • TComponent
  • TPersistent
  • TObject 的