Показать сообщение отдельно
  #2  
Старый 20.04.2014, 17:06
Аватар для Alegun
Alegun Alegun вне форума
LMD-DML
 
Регистрация: 12.07.2009
Адрес: Богородское
Сообщения: 3,025
Версия Delphi: D7E
Репутация: 1834
По умолчанию

А если так попробовать
Код:
procedure TForm1.FormCreate(Sender: TObject);
var
SysIL, SysSIL   : THandle;
SFI     : TSHFileInfo;
begin
SysImageList1 := TImageList.Create(self);
with SysImageList1 do 
begin
     Width := 16;
     Height:= 16;
     SysSIL:= SHGetFileInfo('', 0, SFI, SizeOf(SFI),
       SHGFI_SYSICONINDEX or SHGFI_SMALLICON);
     if SysSIL <> 0 then 
begin
       SysImageList1.Handle := SysSIL;
       ShareImages := True;
     end;
   end;

SysImageList2 := TImageList.Create(self);
with SysImageList2 do 
begin
     Width:= 32;
     Height:= 32;
     SysIL:= SHGetFileInfo('', 0, SFI, SizeOf(SFI),
       SHGFI_SYSICONINDEX or SHGFI_LARGEICON);
     if SysIL <> 0 then 
begin
       SysImageList2.Handle := SysIL;
       ShareImages := True;
     end;
   end;
end;

function GetIconIndex(const AFile: string; Attrs: DWORD): integer;
var
SFI: TSHFileInfo;
begin
SHGetFileInfo(PChar(AFile), Attrs, SFI, SizeOf(TSHFileInfo),
   SHGFI_SYSICONINDEX or SHGFI_USEFILEATTRIBUTES);
Result := SFI.iIcon;
end;



...

with ListView.Items.Add do begin
Caption := FName;
ImageIndex := GetIconIndex(Caption, FILE_ATTRIBUTE_NORMAL);
SubItems.Add(FSize);  
SubItems.Add(FType);
SubItems.Add(FDateTime);
end;
Drkb:00634
Ответить с цитированием