Как определить, насдледовано ли свойство от определённого класса?
Ниже представлен пример кода:
Code: |
function GetFontProp(anObj: TObject): TFont; var PInfo: PPropInfo; begin {Try to get a pointer to the property information for a property with the name 'Font'. TObject.ClassInfo returns a pointer to the RTTI table, which we need to pass to GetPropInfo} PInfo := GetPropInfo(anObj.ClassInfo, 'font'); Result := nil; if PInfo <> nilthen {found a property with this name, check if it has the correct type} if (PInfo^.Proptype^.Kind = tkClass) and GetTypeData(PInfo^.Proptype^)^.ClassType.InheritsFrom(TFont) then Result := TFont(GetOrdProp(anObj, PInfo)); end; |
Просьба писать ваши замечания, наблюдения и все остальное,
что поможет улучшить предоставляемую информацию на этом сайте.
ВСЕ КОММЕНТАРИИ МОДЕРИРУЮТСЯ ВРУЧНУЮ, ТАК ЧТО СПАМИТЬ БЕСПОЛЕЗНО!