在德爾福2007年,我添加了一個新的字符串類型,我的項目:如何獲取自定義屬性的屬性類型名稱?
type
String40 = string;
此屬性是在課堂上使用:
type
TPerson = class
private
FFirstName = String40;
published
FirstName: string40 read FFirstName write FFirstName;
end;
在運行時,我想要得到的屬性的名稱名字通過使用RTTI。我期望它是String40:
var
MyPropInfo: TPropInfo;
PropTypeName: string;
MyPerson: TPerson;
begin
MyPerson := TPerson.Create;
MyPropInfo := GetPropInfo(MyPerson, 'FirstName')^;
PropTypeName := MyPropInfo.PropType^.Name;
但是,在這個例子中PropTypeName是'string'。我需要做什麼才能獲得正確的屬性類型名稱'String40'?
您的代碼中有一些錯誤:=必須是:,缺少屬性關鍵字。你確定你已經測試過嗎? – 2009-04-22 13:29:23