Вниз
Скачать: 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.022 c
9-1105126758
Micker2
2005-01-07 22:39
2005.03.27
Физика объектов в 2d


14-1110363553
R.D.I.
2005-03-09 13:19
2005.03.27
Сайт kladovka.com.ru приостановил работу?


1-1110555153
deDalta
2005-03-11 18:32
2005.03.27
TreeView


1-1110471877
nes
2005-03-10 19:24
2005.03.27
BRCC32.exe (Borland Resource CommandLine Compiler)


1-1110393435
Tirex
2005-03-09 21:37
2005.03.27
принудительное использование другого шрифта всей программой




   Наверх