Вниз
Скачать: CL | DM;

Как сохранить список картинок из ImageList’а в один файл?   Найти похожие ветки 

← →
MAN-IN-RED ©   (2002-06-20 14:06) [0]

Как сохранить список картинок из ImageList’а в один файл, а потом загрузить его?


← →
MAN-IN-RED ©   (2002-06-20 15:40) [1]

Помогите же пожалуйста!


← →
Kaban ©   (2002-06-20 15:44) [2]

Обязательно программно? Тогда зачем?
Впрочем все равно можно сделать нужных размеров BitMap, скопировать туда иконки и записать в файл.


← →
Kaban ©   (2002-06-20 15:45) [3]

Кстати если не программно, щелкни правой кнопкой мыши на ImagList и выбери команду save to file


← →
Man-In-Red ©   (2002-06-20 15:56) [4]

Обязательно программно!


← →
Kaban ©   (2002-06-20 15:57) [5]

ну тогда см. первую подсказку. Можно узнать почему это обязательно


← →
Man-In-Red ©   (2002-06-20 16:04) [6]


> Kaban © (20.06.02 15:57)
> ну тогда см. первую подсказку. Можно узнать почему это обязательно

На форме лежит ToolBar, у него есть свойство images… оно у меня равняется ImageList1,
Теперь все кнопки в ToolBar’е будут вытягивать нужную картинку из ImageList’a, но эти картинки нужно изменять в run-time, после этого, список нужно сохранить, а при следующем запуске загрузить!
Вот в этом та и вся трабла!


← →
Kaban ©   (2002-06-20 16:09) [7]

Ну если уж на то пошло то можно и в отдельных файлах хранить.
А это не геморой изменять иконки на кнопках.


← →
Man-In-Red ©   (2002-06-20 16:14) [8]


> А это не геморой изменять иконки на кнопках.

Их там всего 300... :)


← →
Man-In-Red ©   (2002-06-20 16:21) [9]

Есть маленькая идейка… но нужна помощь в ее реализации…
Можно затянуть в это все дело listBox, и в него добавлять имена и пути к картинкам из ImageList’а, потом сохранить лист, при запуске загрузить, а вот тут есть вопрос – как теперь в ImageList добавить все картинки имена которых в ListBox’е?
Нужна помощь…


← →
Kaban ©   (2002-06-20 16:27) [10]

Да нафига все эти извращения
Если уж сами написать не можете:

BitMap:=TBitMap.Create;
BitMap.Height:=IconHeight;
BitMap.Width:=IconWidth * IconCount;
for i:=0 to IconCount-1 do
ImageList1.Draw(BitMap.Canvas,i * IconWidth, 0 , i, true)

BitMap.SaveToFile("На хрена это все нужно.bmp");
BitMap.Free;


← →
Skier ©   (2002-06-20 16:28) [11]

> Man-In-Red
Может имеет смысл хранить все
картинки в RES-файле и оттуда их брать
через ResInstLoad


← →
McSimm ©   (2002-06-20 16:34) [12]

Сохранить в один файл можно так:
B := TBitmap.Create;
try
B.Handle := ImageList1.GetImageBitmap;
B.SaveToFile("c:\bbb.bmp");
finally
B.Free
end

Прочитать -
B := TBitmap.Create;
try
B.LoadFromFile("c:\bbb.bmp");
ImageList1.Clear;
ImageList1.Add(B, nil);
finally
B.Free
end


← →
Kaban ©   (2002-06-20 16:36) [13]

О как значит можно


← →
sergio2204   (2002-06-20 17:31) [14]

procedure SaveImageListToFile(ImageList: TImageList; FileName: string);
var
B: TBitmap;
i: Integer;
S: TFileStream;
begin
S := TFileStream.Create(FileName, fmCreate);
try
for i := 0 to ImageList.Count - 1 do begin
B := TBitmap.Create;
try
ImageList.GetBitmap(i, B);
B.SaveToStream(S);
finally
B.Free;
end;
end;
finally
S.Free;
end;
end;

procedure LoadImageListFromFile(ImageList: TImageList; FileName: string);
var
B: TBitmap;
S: TFileStream;
begin
S := TFileStream.Create(FileName, fmOpenRead);
try
while S.Position < S.Size do begin
B := TBitmap.Create;
try
B.LoadFromStream(S);
ImageList.Add(B, nil);
finally
B.Free;
end;
end;
finally
S.Free;
end;
end;



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

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



Память: 0.48 MB
Время: 0.009 c
7-1225
Schummi
2002-01-13 10:13
2002.07.01
МР3 - в линию???


1-1091
Я_Чайник
2002-06-19 13:02
2002.07.01
Как попасть в UBFPD


1-1033
PTE
2002-06-17 20:57
2002.07.01
Как объеденить одинаковые свойства для всех edit?


4-1249
spiderman
2002-05-03 13:09
2002.07.01
Сообщение


1-1015
Exploited
2002-06-20 16:04
2002.07.01
Memo




   Наверх