怎么判断一个控件是从何处继承而来

如何判断一个控件是从何处继承而来?
我现在得到一个控件指针,   不知道是什么控件,可能是第三方,
我想取得它的每个父类名称,   请问该如何做?   谢谢!

------解决方案--------------------
class function InheritsFrom(AClass: TClass): Boolean;
------解决方案--------------------

BitBtn1: TBitBtn;


showmessage( bitbtn1.ClassParent.ClassName );
------解决方案--------------------
ClassParent.ClassName
------解决方案--------------------
看看这个,不知有没有帮助

http://blog.yd153.com/user1/wyattwriy/archives/2007/200.html
------解决方案--------------------
procedure ParentClassName ( TmpObj: TObject );
var
TmpClass : TClass;
begin
Tmpclass := TmpObj.ClassType;

while ( TmpClass <> TObject ) do
begin
TmpClass := TmpClass.ClassParent;
ShowMessage ( TmpClass.ClassName );
end;
end;

procedure TForm1.BitBtn1Click(Sender: TObject);
begin
ParentClassName ( Unit2.Form2.BitBtn1 );
end;