begin
      PicStream:=TMemoryStream.Create();    
      try
        TGraphicField(DM_All.AQ_StudentDoc.FieldByName('Photo')).SaveToStream(PicStream);
        PicStream.Position:=0;
        IM_Student.Picture.Graphic.LoadFromStream(PicStream);
      finally
        PicStream.Free;
      end;
    end;
这段代码运行时总是出错,为什么?

解决方案 »

  1.   

    可是我想用Timage显示出来,有什么别的办法吗?
      

  2.   

    存到数据库
    var
    pjpg:tjpegimage;
    pic:TMemoryStream;
    begin
    pjpg:=tjpegimage.Create;
    pjpg.LoadFromFile(F:\JPG.jpg);
    pic:=TMemoryStream.Create;
    pjpg.SaveToStream(pic);
    pic.Position:=0;
    TBlobField(dataset.FieldByName('Img')).LoadFromStream(pic);
    dataset.post;
    pic.Free;
    pjpg.free;
    end;
    从数据库取出
    var
    pjpg:tjpegimage;
    pic:TMemoryStream;
    begin
    pjpg:=tjpegimage.Create;
    pic:=TMemoryStream.Create;
    TBlobField(dataset.FieldByName('Img')).savetoStream(pic);
    pic.positon:=0;
    pjpeg.LoadFromStream(pic);
    image.graphi.bmp.assign(pjpeg);
    end;end;