
07.10.2013, 01:35
|
Прохожий
|
|
Регистрация: 26.12.2012
Сообщения: 30
Репутация: 10
|
|
Код:
user
shellapi
...
procedure LV_InsertFiles(strPath: string; LV: TListView; IL: TImageList);
var
Icon: TIcon;
ListItem: TListItem;
FileInfo: SHFILEINFO;
begin
// Создать временную TIcon
Icon := TIcon.Create;
LV.Items.BeginUpdate;
ListItem := LV.Items.Add;
// Получить DisplayName
SHGetFileInfo(PChar(strPath), 0, FileInfo,
SizeOf(FileInfo), SHGFI_DISPLAYNAME);
Listitem.Caption := FileInfo.szDisplayName;
// Получить TypeName
SHGetFileInfo(PChar(strPath), 0, FileInfo,
SizeOf(FileInfo), SHGFI_TYPENAME);
ListItem.SubItems.Add(strPath); // Полный путь
// Получить значок, который представляет файл
SHGetFileInfo(PChar(strPath ), 0, FileInfo,
SizeOf(FileInfo), SHGFI_ICON or SHGFI_SMALLICON); // Иконка файла
icon.Handle := FileInfo.hIcon;
ListItem.ImageIndex := IL.AddIcon(Icon);
// Destroy the Icon
//DestroyIcon(FileInfo.hIcon);
//Icon.Free;
LV.Items.EndUpdate;
end;
...
begin
ListView1.SmallImages:= ImageList1;
LV_InsertFiles(Pchar(listbox1.Items.Strings[Listbox1.Itemindex]), ListView1, Imagelist1);
end;
...
viewstyle:= vsReport;
|