保存bmp图片的时候将扩展名改成了*.b0,装入时提示出错,怎样做到直接用image控件装入这种标准的位图文件?
另:opendialog怎样设置才能不需要改文件夹选项就能找到隐藏文件?

解决方案 »

  1.   


    这样没问题
    Image1.Picture.Bitmap.LoadFromFile('c:\1.bo');
      

  2.   

    Option中有一个ofForceShowHidden,改这个试试
      

  3.   

      tp:= 'd:\a.b0';
      image1.Picture.SaveToFile(tp);
      

  4.   

    不对啊 ,还是出现“unknown picture file extension(.b0)”
    而且我将ofForceShowHidden 改为true也还看不到隐藏的文件。
      

  5.   

    搞掂了,可以显示b0后缀嘅图片,不过image保存成bmp后的文件同b0大小有小小差异,唔知你仲要唔要?
      

  6.   

    另一个试试修改注册表里的值
    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced\Folder\Hidden] 
    OPEN前修改,之后又改回来
      

  7.   

    还直没试过,理论上只要文件的内部格式是一样的(bitmap)  ,文件扩展名不对,加载应该没有问题.
      

  8.   

    MD 还真的试了,用 image1.picture.loadfrom('d:\abc.b0');是错误的..用这个吧,试了是成功的.var
    bmp:Tbitmap;
    begin bmp:=tbitmap.Create;
     bmp.LoadFromFile('d:\abc.b0');
     image1.Picture.Bitmap.Assign(bmp);
    end;
      

  9.   

    你是使用了非bmp的文件,所以出错
      

  10.   

    先注册一下
    使用RegisterFileFormat注册一下
    TPicture.RegisterClipboardFormat('.bo','bmp文件',TBitmap);
      

  11.   

    TPicture使用一个注册列表来实现对特定扩展名的文件的装载。但对于已知文件格式的话,没有必要使用TPicture,比如对你的.b0直接用TBitmap好了,具体的TGraphic类不会检查扩展名的,但代价是你要自己处理出错。