persia_hrn
دوشنبه 22 مهر 1392, 18:55 عصر
سلام بر اساتید محترم
میخواستم بدونم چطور میشه زمان اجرای برنامه تشخیص داد که مثلاً کامپوننت شماره 5 روی فرم خاصیت تغییر سایز (Height) رو داره یا نه ؟
ممنون از دوستان
یوسف زالی
دوشنبه 22 مهر 1392, 19:12 عصر
سلام.
بالاخره یه سوال نسبتا خوب پس از مدت ها...
uses StrUtils, TypInfo;
function HasProperty(Obj: TObject; PropName: string): boolean;
begin
result := Assigned(GetPropInfo(Obj, PropName));
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
ShowMessage(IfThen(HasProperty(Button1, 'Height'), 'Has', 'Has not'));
end;
البته برای Published ها جواب می ده (و خواص ثبت شده در RTTI)
persia_hrn
دوشنبه 22 مهر 1392, 19:15 عصر
آقایی آقا یوسف به مولا :قلب:
vBulletin® v4.2.5, Copyright ©2000-1403, Jelsoft Enterprises Ltd.