我在dxDBGrid中添加一个栏位dbgDetailPluImage,这个栏位是TdxDBGridGraphicColumn类型;
这个栏位内容显示的是图片,通过下面两个事件加载图片:
procedure TCustPriceFm.dbgDetailPluImageAssignPicture(Sender: TObject;
  var Picture: TPicture);
var
  ms: TMemoryStream;
  jpegimg: TJPEGImage;
begin
  ms := TMemoryStream.Create;
  try
    TBlobField(mdDetailPluImage).SaveToStream(ms);
    if ms.Size > 10 then
    begin
      ms.Seek(0, soFromBeginning);
      jpegimg := TJPEGImage.Create;
      try
        jpegimg.LoadFromStream(ms);
        Picture.Graphic := jpegimg;
      finally
        jpegimg.Free;
      end;
    end else
      Picture.Assign(nil);
  finally
    ms.Free;
  end;
end;procedure TCustPriceFm.dbgDetailPluImageGetGraphicClass(Sender: TObject;
  Node: TdxTreeListNode; var GraphicClass: TGraphicClass);
begin
  GraphicClass := TGraphicClass(GetClass('TJPEGImage'));
end;
在程序中的显示和操作都是正常的,现在的问题是我想将这个表格的内容导出到Excel文件,使用:
dbgDetail.SaveToXLS(ExcelFileName, True);
导出的结果是这样的:
---------------------------
库存数量 商品图片 成本价格
9 (GRAPHIC) 450
0 (GRAPHIC) 1136
---------------------------
没有具体的图片,栏位中用“(GRAPHIC)”代替了,我要如何解决?dxDBGrid图片导出Excel