Til den første kan du bruge komponenten ShellTreeView på Samples-fanen. Træk den ned på din form. Sæt dens onChange handler til følgende kode: Edit1.Text := ShellTreeView1.Path;
Til andet delspørgsmål kan du benytte FindFirst og FindNext og FindClose til at gennemgå din mappe: var sr: TSearchRec; FilAttributter: Integer;
Filattributter := faDirectory;
if FindFirst(edit1.text, Filattributter, sr) = 0 then begin repeat
Sådan tæller man en folder sammen, incl. sub-foldere:
uses sysUtils;
function getFolderSize(pn: string): cardinal; var sr: TsearchRec; attr: integer; begin result:=0; attr:=faAnyFile; if FindFirst(pn+'\*.*',attr,sr)=0 then begin repeat if (sr.Attr and faDirectory) = sr.Attr then begin if (sr.Name<>'.') and (sr.Name<>'..') then result:=result+getFolderSize(pn+'\'+sr.Name); end else if (sr.Attr and attr) = sr.Attr then result:=result+sr.Size; until FindNext(sr)<>0; FindClose(sr); end; end; //get folder size
Jeg har ikke testet den med hidden files mv, men mon ikke faAnyFile osse er incl. hiddens og system filer. Ellers er det let at sætte på.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.