![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
работа с ресурсами [D6, WinXP]
PIF © (2006-01-22 18:40:00)Здравствуйте! Как мне загрузить из res файла картинку с расширением jpg в Image. Если можно ответти с примером кода.
Заранее премного благодарен!!!
@BraIN (2006-01-23 00:32:00) [1]
procedure LoadJPEGFromRes(const rName: string; aPic: TPicture);
var
ResHandle: THandle;
MemHandle: THandle;
MemStream: TMemoryStream;
ResPtr: PByte;
ResSize: Longint;
JPEGImage: TJPEGImage;
begin
ResHandle := FindResource(hInstance, PChar(rName), 'JPEG');
MemHandle := LoadResource(hInstance, ResHandle);
ResPtr := LockResource(MemHandle);
MemStream := TMemoryStream.Create;
JPEGImage := TJPEGImage.Create;
ResSize := SizeOfResource(hInstance, ResHandle);
MemStream.SetSize(ResSize);
MemStream.Write(ResPtr^, ResSize);
FreeResource(MemHandle);
MemStream.Seek(0, 0);
JPEGImage.LoadFromStream(MemStream);
aPic.Assign(JPEGImage);
JPEGImage.Free;
MemStream.Free;
end;
Где rName — имя ресурса, а aPic, например, Image.Picture
Desdechado (2006-01-22 19:43:00) [2]
uses JPEG;
oJPG := TJPEGImage.Create;
oJPG.LoadFromStream( oS );
oJPG.DIBNeeded;
Image1.Picture.Bitmap.Assign( oJPG );
oJPG.Free;