请问下,DELPHI里有没有这类的控件啊,将文件或者图片上传到程序目录里的指定的子目录,然后 将路径保存在数据库里,然后将图片显示在FORM上.
请高手指教

解决方案 »

  1.   

    我在组件面版上怎么没看到啊?
    我的是DLEPHI7
      

  2.   

    INDY=>INDY clients,IDNY servers.....
      

  3.   

    是的!
    我设计的一个FORM是一个产品信息的录入.
    包括这个产品的图片.
    所以我希望用户点DBIMAGE,然后就弹出一个对话框,让用户选择图片,然后显示在DBIMAGE上.当用户最后点添加
    则把这个图片拷贝到程序目录的字目录里.然后把这个路径保存到数据库.
      

  4.   

    傻孩子……呵呵。
    用CopyFile函数即可。具体说明见:
    http://baike.baidu.com/view/1117180.htm
      

  5.   

    procedure TForm1.dbimg1Click(Sender: TObject);
    var nm2,nm1:string;
    begin
    dlgOpenPic1.Execute;
     nm2:=ExtractFileName(dlgOpenPic1.FileName);
     nm1:='d\delphifenxi\test\image\';
     CopyFile(PAnsiChar(nm2),PAnsiChar(nm1+nm2),True);
     dbimg1.Picture.LoadFromFile(nm1+nm2);
     ShowMessage(nm1+nm2);
    end;
    我这样写是可以做到.
    但如果我把软件放到别人电脑上使用,有可能路径就会改变了.
    nm1:='d\delphifenxi\test\image\'; 那这里就会错误.
    这里路径要怎么修改呢?
      

  6.   

    你这帖子真难结,呵呵。这里最好读取外部配置文件了。简单写下。
    uses
      IniFiles;var
      _ini: TIniFile;
      _FilePath
    begin
      _ini := TIniFile.Create(ExtractFilePath(ParamStr(0)) + 'param.ini'); //这里设配置文件名为:param.ini。
      _FilePath := ini.ReadString('PATH', 'FilePath', '');
      FreeAndNil(_ini);
    end;
    param.ini文件格式:
    [PATH]
    FilePath=D:\test\image\
      

  7.   

    以上的代码.也只能拷贝本目录的文件
    如果是从E盘拷贝过来,也会报错.
    最后我这样做的!procedure TForm1.dbimg1Click(Sender: TObject); 
    var nm2,nm1:string; 
    begin 
    dlgOpenPic1.Execute; 
    nm2:=ExtractFileName(dlgOpenPic1.FileName); 
    nm1:='d\delphifenxi\test\image\'; 
    CopyFile(PAnsiChar(nm2),PAnsiChar(nm1+nm2),True); 
    dbimg1.Picture.LoadFromFile(nm1+nm2); 
    ShowMessage(nm1+nm2); 
    end; 直接将所有的图片拷贝到程序IMAGE目录里,然后让用户自己在这个目录里去选择图片.
    这样做,就是需要用户将图片要先拷贝到IMAGE目录.这点有点不方便.