{ Checa se uma instância de objeto pertence a uma sub-classe de uma determinada classe }
function IsSubClassOf(AnInstance: TObject; AClass: TClass): boolean; var lClassRef: TClass; begin lClassRef := AnInstance.ClassType.ClassParent; repeat Result := (lClassRef = AClass); lClassRef := lClassRef.ClassParent; until Result or (not Assigned(lClassRef)); end; { Checa se uma instância de objeto pretence a uma determinada classe } function IsClassOf(AnInstance: TObject; AClass: TClass): boolean; begin Result := (AnInstance.ClassType = AClass); end; [As partes desta mensagem que não continham texto foram removidas]