Re[2]: Сериализация объектов
От: Verder  
Дата: 08.11.05 19:40
Оценка:
D>Кажется так получится, но я до конца не уверен...
D>
D>procedure TForm1.OnFindMethod(Reader: TReader; const MethodName: string;
D>  var Address: Pointer; var Error: Boolean);
D>begin
D>  Address := Self.MethodAddress (MethodName);
D>  Error := False;
D>end;

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

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

D>Только не забывай MethodAddress работает только с published методами.

Я знаю, что так можно, но в этом случае функция/метод
Address := Self.MethodAddress (MethodName);
определена в классе, который читает форму. Меня интересует каким образом Delphi адресует обработчики, отображая их в инспекторе объектов.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.