function TfrmMain.AddFile(Path: String; rec: TSearchRec; Index: Integer) : boolean;
var
new: TListItem;
info: TSHFileInfo;
Ext, OtherExt: String;
begin
dlgTarget.GetInfo(Path, info);
new := lvFileList.Items.Add;
new.Caption := Path;
new.ImageIndex := info.iIcon;
new.SubItems.Add(GetSize(rec.Size, rec.Attr));
new.SubItems.Add(asFileTypes[aFileInfos[Index].ftFileType]);
new.SubItems.Add(GetMod(rec.FindData.ftLastWriteTime));
new.SubItems.Add(aFileInfos[Index].sDescription);
Ext := ExtractFileExt(Path);
Ext := Copy(Ext, 2, Length(Ext) - 1);
OtherExt := '.' + Ext + '.';
if (AnsiUpperCase(Ext) <> aFileInfos[Index].sDefaultExtension) and
(Pos(AnsiUpperCase(OtherExt), aFileInfos[Index].sOtherExtensions) = 0) then
new.SubItems.Add('확장자변경(' + aFileInfos[Index].sDefaultExtension + ')')
else
new.SubItems.Add(' ');
new.SubItems.Add(IntToStr(Index));
new.SubItems.Add(IntToStr(rec.Size));
Inc(FileCount);
Result := True;
StatusBar.Panels[0].Text := '총 ' + IntToStr(lvFileList.Items.Count) + ' 객체';
end;
잘짜셨네여..^^
한번 봤는데.. 메모리 릭은 없는거 같습니다..
TListBox와 TListView에 원샷으로 많은 데이터를 쓰면 문제가 생기는거 같습니다..
TListBox는 해결책이 나와있는데, TListView는 아직 안나온것 같네여..^^;;
편법이지만, 일정갯수 쓸때마다 잠쉬 쉬는건 어떨까여? ^^;;
도움 안되 지송함다..^^
함 테스트 해보고, 조은 방법 나오면 알려드리져..
즐푸하세여...
타락천사