Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

image in file [D5]


race1 ©   (2002-12-20 08:33:00) 

как сохранить картинку в файл, используя свой тип, т.е. есть тип
rec = record
value1: integer;
value2: byte;
bit: TBitmap;
img: TImage;
end;

в этом случае картинка несохраняется. а как её сохранить?


Севостьянов Игорь   (2002-12-20 17:15:00) [1]

Вот тебе кусочек из проги - подставь свое и будет тебе счастье - переписывать под твой Rec некогда...

procedure SaveList(const AFileName : String; AItems : TList; const AItemSize : Integer);
var
I : Integer;
LFile : TFileStream;
begin
LFile := TFileStream.Create(AFileName, fmOpenWrite or fmCreate);
try
for i := 0 to AItems.Count - 1 do
LFile.Write(AItems[i]^, AItemSize);
finally
LFile.Free;
end;
end;

procedure LoadList(const AFileName : String; AItems : TList; const AItemSize : Integer);
var
PItem,
Buffer : Pointer;
LFile : TFileStream;
begin
LFile := TFileStream.Create(AFileName, fmOpenRead);
try
if LFile.Size > 0 then
begin
GetMem(Buffer, AItemSize);
LFile.Seek(0, soFromBeginning);
while LFile.Position < LFile.Size do
if LFile.Read(Buffer^, AItemSize) = AItemSize then
begin
GetMem(PItem, AItemSize);
Move(Buffer^, PItem^, AItemSize);
AItems.Add(PItem);
end;
end;
finally
LFile.Free;
end;
end;


F1   (2002-12-20 15:55:00) [2]

>Lenchik (20.12.02 15:47)
:))) Размечтался!


Lenchik   (2002-12-20 15:47:00) [3]

В Streamах не очень разбираюсь, но у меня вроде бы работал фокус типа того что делаешь файл оф рекорд и заполняешь его как в обычном Паскале


zavdim   (2002-12-20 08:38:00) [4]

а как ты ее сохраняешь? - код надо.
И какую картинку - bit,img?


MBo   (2002-12-20 08:38:00) [5]

так сохраняется указатель на объект.
Используй TBitmap.SaveToStream и TFileStream


Наверх

Титульная страница Поиск, карта сайта Написать письмо