各位帮帮忙,我用下面语句把在image中显示的图片保存成位图之后
image1.Picture.SaveToFile(PicPath);
(注:PicPath是图片保存路径,提前设好的形式为C:\image\1.BMP)结果用image1.Picture.LoadFromFile(PicPath);打不开图片,出现这个错误提示“Bitmap   image   is   not   valid”,证明图片读不出来,直接找到这个图片双击能打开现在问题是只要是通过SaveToFile 保存形成的图片都不能打开,其他的都可以,请教各位高人帮忙分析一下,谢谢了

解决方案 »

  1.   

    是不是用SaveToFile保存的时候 扩展名没有设置的原因?
    所以用LoadFromFile就读不出来
    但如果是的话在SaveToFile的时候该怎么设置呢?不用SaveDialog
      

  2.   

    请各位帮帮忙啊
    image中的图片是从粘贴板中复制过去的,就会出现上面那种情况.
    不知道到底怎么回事
      

  3.   

    全部代码太多,我把主要的弄出来新建了一个Form测试 错误是一样的,相关代码:
    unit Unit1;interfaceuses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, Menus, StdCtrls, Buttons, ExtCtrls,clipbrd;type
      TForm1 = class(TForm)
        Image1: TImage;
        BitBtn1: TBitBtn;
        PopupMenu1: TPopupMenu;
        N1: TMenuItem;
        BitBtn2: TBitBtn;
        procedure N1Click(Sender: TObject);
        procedure BitBtn1Click(Sender: TObject);
        procedure BitBtn2Click(Sender: TObject);
      private
        { Private declarations }
      public
        { Public declarations }
      end;var
      Form1: TForm1;implementation{$R *.dfm}procedure TForm1.N1Click(Sender: TObject);
    begin
      if clipboard.hasformat(CF_PICTURE)   then
      begin
        image1.picture.assign(clipboard);
      end;
    end;procedure TForm1.BitBtn1Click(Sender: TObject);
    begin
      image1.Picture.SaveToFile('C:\1.BMP');
    end;procedure TForm1.BitBtn2Click(Sender: TObject);
    begin
      image1.Picture.LoadFromFile('C:\1.BMP');
    end;end.
      

  4.   

    忘了加注释了,第一个procedure TForm1.N1Click(Sender: TObject);是image上的一个右键功能,试验的时候是从 word 里面粘贴出来,直接复制到image里面的
      

  5.   

    这一句改一下:image1.picture.Bitmap.assign(clipboard);
      

  6.   

    image1.picture.Bitmap.Assign(clipboard);