Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.03.27;
Скачать: CL | DM;

Вниз

Как правильно отображать в TListView 32 -битные иконки   Найти похожие ветки 

 
vnavigator   (2004-12-06 20:05) [0]

Проблема в том что я создаю динамически иконки, и когда их отображаю на елементе управления TListView они выходят какие-то угловатые то есть 8-битные (в Listview я их добавляю с помощью TIcon и TImageList)


 
Mihey_temporary ©   (2004-12-06 20:36) [1]


> в Listview я их добавляю с помощью TIcon и TImageList


TIcon не умеет грузить 32-битные правильно.


 
vnavigator   (2004-12-06 23:05) [2]

Я сам знаю, что TIcon не умеет грузить 32-битные иконы правильно, а как это сделать, чтоб грузил правильно?


 
vnavigator   (2004-12-06 23:59) [3]

Короче я тут копал, копал и накопал:
unit uImgList;

interface
uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms,
   Dialogs,CommCtrl;

procedure ConvertTo32BitImageList(const ImageList: TImageList);

implementation

procedure ConvertTo32BitImageList(const ImageList: TImageList);
const
 Mask: array[Boolean] of Longint = (0, ILC_MASK); var
 TempList: TImageList;
begin
 if Assigned(ImageList) then
 begin
   TempList := TImageList.Create(nil);
   try
     TempList.Assign(ImageList);
     with ImageList do
     begin
       Handle := ImageList_Create(Width, Height, ILC_COLOR32 or Mask[Masked],0, AllocBy);
       if not HandleAllocated then
         raise EInvalidOperation.Create("Bad ImageList");
     end;

     Imagelist.AddImages(TempList);
   finally
     FreeAndNil(TempList);
   end;
 end;
end;

end.


При создании формы вызываеш ConvertTo32BitImageList(ilIcons); и все ОК!!! Ура,Ура,Ура...



Страницы: 1 вся ветка

Текущий архив: 2005.03.27;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.026 c
14-1110210478
Anny
2005-03-07 18:47
2005.03.27
как записать музыку с интернет-радио


3-1109755842
Slaga
2005-03-02 12:30
2005.03.27
Выполнение двух запросов одновременно ?


1-1110377875
vlv
2005-03-09 17:17
2005.03.27
Как определить состояние кнопок мыши?


1-1111010691
Гость
2005-03-17 01:04
2005.03.27
Как писать что-нибудь в n-ной колонки ListView?


3-1109837726
mariya_mezenceva
2005-03-03 11:15
2005.03.27
запрос, котопый выбирает данные из двух баз