openpicturedialog1.Execute;
    image1.Picture.LoadFromFile(openpicturedialog1.FileName);
  错误的不让招!
  如何解决?恳请赐教
  另外怎么知道image中loadfile的filename 以便mousemove的时候判断是否改变当前图片,要不然你鼠标放到图片上,会不停的发抖(不停的load file('.\01.bitmap'));偶都眼花了,救命要紧,在此谢过!

解决方案 »

  1.   

    image1.Picture.LoadFromFile(openpicturedialog1.FileName);
    如果你包括了JPEG单元应该 可以导入 BMP,JPEG,其他不支持的格式当然出错。如果你想实现 鼠标进入和退出 的图片变换效果的话,建议自己写一个组件。
    MosueMove里会非常闪要得到图片名称,你要把OPenDialog.FileName保存起来才可以,
    TImage类没有这个属性来保存。
    鼠标进入和退出的效果你可以搜论坛里的相关帖子。。写的太多。实在懒的再写了。。
      

  2.   

    这个很好解决啊!你可要把分数都给我哦!
    要想实现上述功能你必须得到图片的绝对路径才行
    extractfiledir(OpenPictureDialog1.filename)+ '\'+ ExtractFileName(OpenPictureDialog1.filename);是得到图片的绝对路径
      

  3.   

    取绝对路径用这个更简单
    ExpandFileName(OpenPictureDialog1.filename);建议用image控件的tag值去判断。鼠标放到图片 and tag=1时,更新图片
      

  4.   

    各位大师,多谢相助,虽然我使用的绝对路径,但事实上,出现以下错误:
    var
      paths:ansistring;
    begin  {打开照片库员工档案}
       openpicturedialog1.Execute;
       try
       paths:=extractfiledir(OpenPictureDialog1.filename)+ '\'+ ExtractFileName(OpenPictureDialog1.filename);
    //或者 ExpandFileName(OpenPictureDialog1.filename);   image1.Picture.LoadFromFile(paths);
       except
        showmessage('     图片加入时出现错误,请检查格式是否正确!  ');
       end;
    end;
    结果:
       access  violation at address 000000000 .read of address 000000000
    该如何对待?
      

  5.   

    另外,tag=1时图像不变化,我用tag=0时 图像闪的轻了还是闪,看来自己要使用鼠标进入出去了,难道是我使用的方式不对?
      

  6.   

    直接
    image1.Picture.LoadFromFile(OpenPictureDialog1.filename)