![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Создание компонента
TForumHelp © (2008-05-28 16:17:00)Здравствуйте!
Возможно ли динамически создать компонент, зная только его имя (например 'TEdit' или 'TButton'), и потом управлять им, как через OLE?
чтобы получилось что-то типа:
MyButton := CreateObjectFromClass('tbutton', Form1);
MyButton.Parent := Form1;
MyButton.Left := 150;
MyButton.Top := 100;
MyButton.Caption := 'Нажми меня!';
MyButton.OnClick := MyButtonClick;
DimaBr (2008-05-28 16:32:00) [21]Для этого нужно зарегистрировать компонент
procedure TForm1.Button1Click(Sender: TObject);
var C: TPersistentClass;
begin
C := FindClass('TPanel');
if Assigned(C) then begin
TControlClass(C).Create(self).Parent := form1 ;
end;
end;
initialization
RegisterClass(TPanel);
Reindeer Moss Eater (2008-05-28 16:28:00) [22]и потом управлять им, как через OLE?
А почему не по infra red?
TForumHelp (2008-05-28 16:19:00) [23]Кстати, я подразумеваю создание не толькостандартных компонентов, но и своих собственных!
Заранее спасибо!