以下是我的源代码,请看看错在哪儿?
-----------------------------------------------------------------------------
Uses Clipbrd,Jpeg;
-----------------
var Jpeg:TJpedImage;
-----------------  
if SavePictureDialog.Execute then
  Begin
    Jpeg:=TJpegImage.Create;
    Try
      ClipBoard.Clear;
      DbChart.CopyToClipboardBitmap;//-----TDbchart 控件
      if Clipboard.HasFormat(CF_BITMAP) then
      Begin
       Jpeg.LoadFromClipboardFormat(CF_BITMAP,ClipBoard.GetAsHandle(CF_BITMAP),256);
       Jpeg.SaveToFile(SavePictureDialog.FileName);
      end;
    Finally
      Jpeg.Free;
    end;  end; 
------------------但是系统出错,好想是内存地址类的错误-----请问上面代码哪儿有错误?

解决方案 »

  1.   

    搞不懂你为会么要用jpeg 用TBitmap就行了
      

  2.   

    用Jpeg是想存为Jpeg格式的图象
      

  3.   

    var 
      Jpeg:TJpedImage;
      Bmp: TBitmap;
    -----------------  
    if SavePictureDialog.Execute then
      Begin
        Jpeg:=TJpegImage.Create;
        Bmp := TBitmap.Create;
        Try
          ClipBoard.Clear;
          DbChart.CopyToClipboardBitmap;//-----TDbchart 控件
          if Clipboard.HasFormat(CF_BITMAP) then
          Begin
            Bmp.LoadFromClipboardFormat(CF_BITMAP,ClipBoard.GetAsHandle(CF_BITMAP),256);
            Jpeg.Assign(Bmp);       
            Jpeg.SaveToFile(SavePictureDialog.FileName);
          end;
        Finally
          Jpeg.Free;
          Bmp.Free;
        end;  end;