在内存位图中绘图,并显示。代码如下:
HDC hdc=GetDC(hwnd);
RECT rect;
GetClientRect(hwnd,&rect);
int cxClient = rect.right;
int cyClient = rect.bottom;
//为显示设备创建一块相应的内存
HDC hdcmem = CreateCompatibleDC(NULL);
//创建位图
HBITMAP hBitmap = CreateCompatibleBitmap(hdc,cxClient,cyClient);
//将内存句柄和位图句柄绑定
SelectObject(hdcmem,hBitmap);
//画图
FillRect(hdcmem,&rect,NULL);
Rectangle(hdcmem,20,20,100,100);
//显示到窗口上
BitBlt(hdc,0,0,cxClient,cyClient,hdcmem,0,0,SRCCOPY);
DeleteDC(hdcmem);
DeleteObject(hBitmap);
ReleaseDC(hwnd,hdc);
要创建多个内存位图,可以多次调用CreateCompatibleDC和CreateCompatibleBitmap函数。