对像可能是很复杂的,比如,树形、或者第三方控件。

解决方案 »

  1.   

    用reader 和 writer,什麼復雜的東西都可實現你的要求!!!
      

  2.   

    可不可以详细一点,reader writer 是什么东东》
      

  3.   

    用Stream类或者其子类操作,比如用oracle的blob字段,delphi里面有TblobField
    给你一段
    procedure TMenuForm.ShowImage;
    var
      MyJpeg:TJpegImage;
      MyStm:TMemoryStream;
    begin
      a.GetSelRow;  if not a.DataSet.FieldByName('图象').IsNull then
      begin
        try
          MyJpeg:=TJpegImage.Create;
          MyStm:=TMemoryStream.Create;
          MyStm.Clear;
          TBlobField(a.Dataset.FieldByName('图象')).SaveToStream(MyStm);
          MyStm.Position:=0;
          MyJpeg.LoadFromStream(MyStm);
          FootImage.Picture.BitMap.Assign(MyJpeg);
        finally
          MyJpeg.Free;
          MyStm.Free;
        end;
      end
      else
      begin
        if FootImage.Picture<>Nil then
        begin
          FootImage.Picture.Assign(Nil);
        end;
      end;
    end;
      

  4.   

    function ComponentToString(Component: TComponent): string;var
      BinStream:TMemoryStream;
      StrStream: TStringStream;
      s: string;
    begin
      BinStream := TMemoryStream.Create;
      try
        StrStream := TStringStream.Create(s);
        try
          BinStream.WriteComponent(Component);
          BinStream.Seek(0, soFromBeginning);
          ObjectBinaryToText(BinStream, StrStream);
          StrStream.Seek(0, soFromBeginning);
          Result:= StrStream.DataString;
        finally
          StrStream.Free;    end;
      finally
        BinStream.Free
      end;
    end;function StringToComponent(Value: string): TComponent;
    var
      StrStream:TStringStream;
      BinStream: TMemoryStream;
    begin
      StrStream := TStringStream.Create(Value);
      try
        BinStream := TMemoryStream.Create;
        try
          ObjectTextToBinary(StrStream, BinStream);
          BinStream.Seek(0, soFromBeginning);
          Result := BinStream.ReadComponent(nil);    finally
          BinStream.Free;
        end;
      finally
        StrStream.Free;
      end;
    end;
      

  5.   

    很難用比較簡單的言語表達, 你可在delphi的幫助中輸入 TReader, TWriter,或看看看網上相關的論述!! 不是很難的!!