Не совсем то, что вы ищете, но вы можете использовать RTTI, чтобы получить доступ к значениям различных опубликованных свойств. Волшебные процедуры в блоке TypInfo. Вероятно, вас больше всего интересуют GetPropList, который будет возвращать список свойств объектов, и GetPropValue, который позволит вам получить значения свойств.
procedure TForm1.DumpObject( YourObjectInstance : tObject );
var
PropList: PPropList;
PropCnt: integer;
iX: integer;
vValue: Variant;
sValue: String;
begin
PropCnt := GetPropList(YourObjectInstance,PropList);
for iX := 0 to PropCnt-1 do
begin
vValue := GetPropValue(YourObjectInstance,PropList[ix].Name,True);
sValue := VarToStr( vValue );
Memo1.Lines.Add(PropList[ix].Name+' = '+sValue );
end;
end;
например, запустите это с DumpObject (Self) по нажатию кнопки основной формы, и он сбросит все свойства текущей формы в заметку. Это только опубликованные свойства и требует, чтобы основной класс либо происходил из TPersistent, либо OR был скомпилирован с включенным {$ M +} перед объектом.
Ходят слухи, что подобная способность "отражатель" будет доступна в будущей версии Delphi (возможно, 2010).