![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Что я делаю не так? [D6, Win2k]
avr555 © (2002-02-07 13:18:00)Хочу записать объект в поток. Для это го делаю следующее:
procedure TForm1.ButtClick(Sender: TObject);
var
btn,btn1 : TButton;
str:TMemoryStream;
comTmp :TButton;
begin
str := TMemoryStream.Create;
btn := TButton.Create(self);
btn.Parent := self;
btn.Left := 100;
btn.Top := 100;
str.WriteComponent(btn);
str.Seek(0, soFromBeginning);
comTmp := TButton(str.ReadComponent(nil));
btn.Free;
end;
Когда происходит чтение компонента, выходит сообщение:
"Class TButton not found"
Что я делаю неправильно
avr555 (2002-02-07 14:45:00) [1]Все у меня работает замечательно, только не копируются внутренние объекты, массивы, дрцгие компоненты.
Мне их тоже по отдельности ручками копировать?
avr555 (2002-02-07 13:28:00) [2]Только написал в форум и сразу же нашел ответ:
Нужно было добавить:
RegisterClass(TComponentClass(btn.ClassType));
И все заработало.