Delphi自带的打开图片那个Dialog不支持GIF呀?下面是图片上传 过程,大家帮我看看代码,要怎么才能保存JPG,GIF。

解决方案 »

  1.   

    用TBlobField保存,这个和你的文件类型没有什么关系吧
      

  2.   

    跟文件类型无关的。你可以正常保存入数据库,然后正常导出为文件。
    只是Delphi中TImage等控件不支持GIF格式
      

  3.   

    晕,忘记贴代码了不好意思哈!procedure TForm1.Button2Click(Sender: TObject);
    //上传
    var ImgStream: TStream;
    begin
    try
      if fileexists(edit1.Text) then //判断文件是否存在
      with table1 do
      begin
        table1.Open;
        Active := true;
        //indexfieldnames:='ImgName';
        //UpLoadImg.LoadFromFile(edit1.text);
        table1.Insert;
        //Fields[0].AsString := extractfilename(edit1.text);
        Fields[0].Assign(Image1.Picture);
        Post;
        ShowMessage('Save Picture successfully!');
      end;
    except
      ShowMessage('Save Picture faild!');
    end;
      Table1.Active := false;
      //Table1.Close;
    end;
      

  4.   

    TBlobField(Fields[0]).LoadFromFile(edti1.text);
      

  5.   

    TImage是不支持Gif格式的,不知道注册格式有无用。
      

  6.   

    使用
    TBlobField(Fields[0]).LoadFromFile(edti1.text);
    插入jpg的时候,提示:
    BitMap is not valid!
      

  7.   

    var
      Ms:TMemoryStream;
    begin
       Ms:=TMemoryStream.Create;
       Ms.LoadFromFile(edti1.text);   TBlobField(Fields[0]).LoadFromStream(Ms);
       
       Ms.Free;
      

  8.   

    应该不会吧procedure TForm1.Button2Click(Sender: TObject);
    //上传
    var
      Ms:TMemoryStream;
    begin
    try
      if fileexists(edit1.Text) then //判断文件是否存在
      with table1 do
      begin
        table1.Open;
        Active := true;
        Ms:=TMemoryStream.Create;
        Ms.LoadFromFile(edti1.text);
        TBlobField(Fields[0]).LoadFromStream(Ms);
        Ms.Free;
        table1.Insert;
        Post;
        ShowMessage('Save Picture successfully!');
      end;
    except
      ShowMessage('Save Picture faild!');
    end;
      Table1.Active := false;
    end;
      

  9.   


    1、GifImage,网上找找看,应该有;
    2、保存到数据库,用TBlobField。
      

  10.   

    TBlobField(Fields[0]).LoadFromFile(edti1.text);
      

  11.   

    Ms:=TMemoryStream.Create;
        Ms.LoadFromFile(edti1.text);
        Ms.position:=0; 好象是这样吧?
        TBlobField(Fields[0]).LoadFromStream(Ms);
      

  12.   

    var
      MS_JpegStream:TMemoryStream;
    begin
      ……
                try
                  MS_JpegStream:=TMemoryStream.Create;
                  pic1_img.Picture.Graphic.SaveToStream(ms_jpegstream);
                  Parameters.ParamByName('pic1').LoadFromStream(MS_JpegStream,ftblob);
                finally
                  MS_JpegStream.Free;
                end
    end;这里是通过SQL语句参数保存的。
    GIF需要到网上找一个支持GIF的控件。
      

  13.   

    可以用流的和存图片路径的两种方式存储!前者安全性高可是效率低!后者安全差!效率高!一般都是用后者!!Tjpegimage 你肯定用的到!