怎么判断一个文件夹中有几张图片,并分别用Timage打开这些图片

解决方案 »

  1.   

    根据后缀名来搜索procedure FindFiles(Apath:string);
    var
        FSearchRec,DSearchRec:TSearchRec;
        FindResult:integer;begin
        if apath[length(apath)]<>'\' then apath:=apath+'\';
        FindResult:=FindFirst(Apath+'*.*',faAnyFile+faHidden+faSysFile+faReadOnly,FSearchRec);
        try
           while FindResult=0 do
           begin
               if pos(LowerCase(ExtractFileExt(FSearchRec.Name)),'.tif.bmp.jpg.gif')>0 then
                 Form1.ListBox1.Items.Add(Apath+FSearchRec.Name);
               FindResult:=FindNext(FSearchRec);
           end;
           FindResult:=FindFirst(Apath+'*.*',faDirectory,DSearchRec );
           while FindResult =0 do
           begin
               if ((DSearchRec.Attr and fadirectory)=fadirectory) and (leftstr(DSearchRec.Name,1)<>'.') then
                   FindFiles(Apath+DSearchRec.Name);
               FindResult:=FindNext(DSearchRec );
           end;
        finally
           FindClose(FSearchRec);
        end;
    end;
      

  2.   

    最简单的方法 放个 FileListBox 到窗体上,枚举 item 域 就可以了
      

  3.   

    遍历,查找扩展名,比较,动态创建Timage ,显示