Конференция "Основная" » Размер иконки [D7, WinXP]
 
  • webpauk © (30.10.09 16:45) [0]
    function GetIcon(const FileName: string): TIcon;
    const
     IconType: TIconType = itLarge;
    var
     FileInfo: TShFileInfo;
     ImageList: TImageList;
     IT: DWORD;
    begin
     IT := SHGFI_LARGEICON;
     Result := TIcon.Create;
     ImageList := TImageList.Create(nil);
     FillChar(FileInfo, Sizeof(FileInfo), #0);
     ImageList.ShareImages := true;
     ImageList.Handle := SHGetFileInfo(PChar(FileName), IT, FileInfo, sizeof(FileInfo), IT or SHGFI_SYSICONINDEX);
     ImageList.GetIcon(FileInfo.iIcon, Result);
     ImageList.Free;
    end;



    загружаю иконку из файла.
    РЕАЛЬНЫЙ размер иконки 48Х48. А свойства Icon.Width, Icon.Height - всегда 32х32.
    как правильно получить размер иконки?
  • Sapersky (30.10.09 20:14) [1]
    Думаю, она подгоняется под системный размер "большой" иконки.
    ИМХО, единственный надёжный способ получить иконку "как есть" - брутальное расковыривание ресурсов файла.
  • TIF © (31.10.09 03:54) [2]
    Про ограниченные системные размеры иконки на днях обсуждение было:
    http://pda.delphimaster.net/?id=1256444215&n=18
 
Конференция "Основная" » Размер иконки [D7, WinXP]
Есть новые Нет новых   [134431   +9][b:0.001][p:0.001]