var
dc , tmpDC: HDC;
bmp: HBITMAP;
pStru
![Stick Out Tongue :P :P](https://cdn.jsdelivr.net/joypixels/assets/8.0/png/unicode/64/1f61b.png)
AINTSTRUCT;
pImg
![Stick Out Tongue :P :P](https://cdn.jsdelivr.net/joypixels/assets/8.0/png/unicode/64/1f61b.png)
ointer;
MS:TMemoryStream;
Bf:BITMAPFILEHEADER;
Bmf: TBitmapFileHeader;
WM_PAINT:begin
BeginPaint(hWnd,pStru);
/////LoadJpegFile(JpegFileName:string;var pImg
![Stick Out Tongue :P :P](https://cdn.jsdelivr.net/joypixels/assets/8.0/png/unicode/64/1f61b.png)
ointer):Boolean;
if LoadJpegFile('221_2.jpg',pImg) then begin //转换位图
MS:=TMemoryStream.Create;
CopyMemory(@bf,pImg,sizeof(BITMAPFILEHEADER));
MS.Write(pImg^,bf.BfSize);
MS.ReadBuffer(Bmf, sizeof(Bmf));
//已经将位图储存到流中
//问题就在这,应该怎么把MS到BMP中。或者能否有更简单的方法?//bmp: HBITMAP;
//BMP:=
MS.Free;
FreeMem(pImg);
tmpDc := CreateCompatibleDC(DC);
Oldbmp := SelectObject(tmpDC,bmp);
BitBlt(DC,0,0,500,500,tmpDC,0,0,SRCCOPY);
SelectObject(tmpDC,oldbmp);
DeleteDC(tmpDC);
DeleteObject(bmp);
ReleaseDC(hWnd,dc);
EndPaint(hWnd,pStru);
end;
来自:sbzldlb, 时间:2005-12-30 14:31:36, ID:3313893
procedure TForm1.Button1Click(Sender: TObject);
var
a: TBITMAP ;
begin
a.Create;
a.LoadFromStream();
end;