如果你不怕麻烦,而且了解jpg的格式,当然可以。
不过,RX组件包里的picture就可以,至于opendialog,直接自己写过滤器和扩展名就行了。
我没有6.0的版本,不知道它支持了没有.

解决方案 »

  1.   

    我是C++BUILDER5.0,可以预览呀,delphi也应该可以
      

  2.   

    不需要,只要你Use一下jpeg单元。
      

  3.   

    同意,要加 use jpeg,在BCB中就是 #include “jpeg.hpp"
    这时,jpeg的代码码才进入你的.exe中,就可预览.jpg,
    同样,对于.gif,也是类似(先要安装gifimage.pas),
    它的头是  gifimage.hpp 但这个头跟jpeg有点不一样,加了这
    个头还不行,在BCB中,还要加    #pragma link "GIFImage"
    这时,gif的代码库才真正进入你的.exe,
    TOpenPictureDialog也可预览了,这样 .bmp,.jpg,.gif都可以了,
    在delphi处理.gif,可这样,先在Form1上放一个Image1,再调入
    一幅.gif图,Run一下,停止run后删除Image1,这时,
    OpenPictureDialog就可预览.gif了
    我已试好了
      

  4.   

    这时,为了预览.jpg与.gif,你的.exe目标代码
    已增加了好几百K了,这是代价
      

  5.   

    use 
      jpeg;
      

  6.   

    var
      temp:boolean;
    begin
     
     try
       if opendialog1.Execute then
        image1.Picture.LoadFromFile(opendialog1.FileName);
      except
        on EInvalidGraphic do
          Image1.Picture.Graphic := nil;  end;
    Temp := Image1.Picture.Graphic is TJPEGImage;
      if Temp then
        with TJPEGImage(Image1.Picture.Graphic) do
        begin
          PixelFormat := TJPEGPixelFormat(jf24Bit);      Scale := TJPEGScale(jsFullSize);
          Grayscale := false;
          Performance := TJPEGPerformance(jpBestSpeed);
          ProgressiveDisplay := true
        end;
    end;