Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.04 c
3-1109546867
Fedia
2005-02-28 02:27
2005.03.27
Объединение данных из двух таблиц одним запросом


6-1106735456
ТехникПТО
2005-01-26 13:30
2005.03.27
PageControl и WebBrowser


1-1110967349
Marat
2005-03-16 13:02
2005.03.27
DateTimePicker


14-1110053626
Vasya.ru
2005-03-05 23:13
2005.03.27
Помогите найти алгоритм


3-1109252059
Alex--
2005-02-24 16:34
2005.03.27
Ошибка при загрузке файла в TClientDataSet




   Наверх