Re: Сериализация объектов
От: Danchik Украина  
Дата: 08.11.05 16:36
Оценка:
Здравствуйте, Verder, Вы писали:

V>Доброго времени суток.


V>Просмотрел статью http://www.rsdn.ru/?article/delphi/serialization.xml, очень позновательно, но вот, что меня интересует. Каким образом сохраняются и восстанавливаются обработчики, например, Button1Click? Delphi каким-то образом это делает, отображаю в инспекторе назначенный на OnClick Button1Click!


V>Подскажите кто знает!


Кажется так получится, но я до конца не уверен...
procedure TForm1.OnFindMethod(Reader: TReader; const MethodName: string;
  var Address: Pointer; var Error: Boolean);
begin
  Address := Self.MethodAddress (MethodName);
  Error := False;
end;

// пример чтения из потока

  aReader := TReader.Create(aStream {поток с данныти}, 4096);
  try
  //  aReader.OnError := OnReaderError; возможность перехватывать ошибки чтения
    aReader.OnFindMethod := OnFindMethod; // возможность подсунуть свое событие
    aComponent := aReader.ReadRootComponent (nil); {создаем обьект из потока}
  finally
    aReader.Free;
  end;

Только не забывай MethodAddress работает только с published методами.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.