
22.10.2012, 10:53
|
 |
Let Me Show You
|
|
Регистрация: 30.04.2010
Адрес: Северодвинск
Сообщения: 5,426
Версия Delphi: 7, XE5
Репутация: 59586
|
|
Код:
procedure TForm1.RuntimeCompCreate(Data: array of Variant);
var
AClass: TControlClass;
AControl: TControl;
APropInfo: PPropInfo;
begin
AClass:=TControlClass(GetClass(Data[0]));
AControl:=AClass.Create(Self);
AControl.Parent:=Self;
AControl.Left:=Data[1];
AControl.Top:=Data[2];
AControl.Width:=Data[3];
AControl.Height:=Data[4];
APropInfo:=GetPropInfo(AControl, 'Caption');
if Assigned(APropInfo) then SetStrProp(AControl, APropInfo, Data[5]);
APropInfo:=GetPropInfo(AControl, 'Text');
if Assigned(APropInfo) then SetStrProp(AControl, APropInfo, Data[5]);
end;
использование:
Код:
begin
RegisterClass(TLabel);
RegisterClass(TEdit);
RegisterClass(TButton);
RuntimeCompCreate(['TLabel', 10, 10, 0, 0, 'Label']);
RuntimeCompCreate(['TEdit', 80, 10, 100, 21, 'Edit']);
RuntimeCompCreate(['TButton', 200, 10, 75, 25, 'Button']);
end;
__________________
Пишу программы за еду.
__________________
|