Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.08.08;
Скачать: CL | DM;

Вниз

как создать объект по имени класса ?   Найти похожие ветки 

 
SkyP   (2004-07-22 09:32) [0]

есть строка с именем класса,
как создать объект ?


 
Sun bittern ©   (2004-07-22 09:41) [1]

function ETSCreateComponent(AComponentClass: TClass; AOwner: TComponent = Nil): TComponent;
 var
   A: TComponentClass;
begin
 A := TComponentClass(AComponentClass);
 Result := A.Create(AOwner);
end;

+ RegisterClasses


 
SkyP   (2004-07-22 09:44) [2]

создание обьъекта по имени класса


 
Sandman25 ©   (2004-07-22 09:51) [3]

type
 TWinControlClass = class of TWinControl;

procedure TForm1.FormCreate(Sender: TObject);
var
 Control                     : TWinControl;
begin
 RegisterClass(TButton);
 Control := TWinControlClass(FindClass("TButton")).Create(Self);
 Control.Parent := Self;
end;


 
SkyP   (2004-07-22 09:58) [4]

спасибо, даже извените,
FindClass знал :)))


 
Sandman25 ©   (2004-07-22 10:01) [5]

А я не знал :) Зашел в classes.pas, включил Code Explorer, нашел GetClass,  вызвал, нарвался на AV, подумал, поискал, где еще вызывается GetClass - нашел FindClass, вызвал нарвался на ошибку незарегистрированного класса, подумал, вспомнил о RegisterClass. Метод научного тыка, в общем :)



Страницы: 1 вся ветка

Текущий архив: 2004.08.08;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.025 c
3-1089719178
denis24
2004-07-13 15:46
2004.08.08
adotable1.FieldByName( fl_prov ).Asboolean


8-1085256428
Strimer
2004-05-23 00:07
2004.08.08
OpenGL. "Мигание" области отрисовки


1-1090598058
AlexDee
2004-07-23 19:54
2004.08.08
Возведение в "сложную" степень и число "E"


1-1090576887
igosm
2004-07-23 14:01
2004.08.08
Есть ли в СИ аналог дельфийского TMemoryStream?


1-1090852542
slaga
2004-07-26 18:35
2004.08.08
Как созадать креейтнуть невизуальную компоненту в ddl-ке