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

Вниз

Проблема с ImageList   Найти похожие ветки 

 
KisaNetik   (2004-02-29 16:52) [0]

Проблема состоит такая - нужно сохранить файл с картинками, как некую базу картинок с разрешением 32х32 и выводить их в ListView! Как мне это организовать? Пробовал по разному, но не получается...
с KOL познакомился недавно и ......
Помогите пожалуйста


 
KisaNetik   (2004-02-29 18:15) [1]

Вот - Разобрался, ловите, кому надо...

type ABitmap=array of PBitMap;

function TForm1.GetBitmap: ABitmap;
var
p:PBitMap;
f:File of PBitMap;
a:ABitMap;
i:integer;
begin
if not FileExists(GetStartDir+"BQ\bmp.dat") then
 begin
  MsgOK("Файла не существует! "+GetStartDir+"BQ\bmp.dat"+"!");
  exit;
 end;
try
 AssignFile(f,GetStartDir+"BQ\bmp.dat");
 i:=0;
 Reset(f);
 repeat
  read(f,p);
  SetLength(a,i+1);
  a[i]:=p;
  i:=i+1;
 Until EOF(f);
 CloseFile(f);
Except
 MsgOK("Не могу прочитать картинки из файла! Взможно к файлу нет доступа!");
 Result:=nil;
end;
end;

procedure TForm1.SetBitmap(a: ABitMap);
var
f:File of PBitMap;
i:integer;
begin
try
 AssignFile(f,GetStartDir+"BQ\bmp.dat");
 Rewrite(f);
 for i:=0 to Length(a)-1 do write(f,a[i]);
 CloseFile(f);
Except
 MsgOK("Не могу записать картинки в файл! Возможно нет доступа к файлу...");
end;
end;

procedure ABitMap2Img(mas: ABitMap; im: TKOLImageList);
var
i:integer;
begin
for i:=0 to Length(mas)-1 do
 begin
  im.AddMasked(mas[i].Handle,clWhite);
 end;
end;


 
KisaNetik   (2004-02-29 19:14) [2]

А так получится???
Надо с ImageList обратно в PBitMap...

function Img2ABitMap(im: TKOLImageList): ABitMap;
var
i:integer;
p:PBitMap;
c:HICON;
begin
if im.Count=0 then
 begin
  Result:=nil;
  exit;
 end;//im.Count=0
p:=NewBitMap(32,32);
for i:=0 to im.Count-1 do
begin
 c:=im.ExtractIcon(i);
 p.Handle:=c;
 SetLength(Result,i+1);
 Result[i]:=p;
end;//for i:=0 to im.Count-1
end;



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

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

Наверх




Память: 0.47 MB
Время: 0.034 c
4-1087311361
Gr
2004-06-15 18:56
2004.08.01
Температура


14-1089972728
__none__
2004-07-16 14:12
2004.08.01
а меня вот забанили по ошибке...


14-1089823715
VID
2004-07-14 20:48
2004.08.01
Совместное использование ресурсов компьютера в сети. Как ?


14-1089294654
Nick-From
2004-07-08 17:50
2004.08.01
Косяки в Excel


11-1074852651
Владимир Кладов
2004-01-23 13:10
2004.08.01
Версия 1.91