VC++在內存中繪圖
阿新 • • 發佈:2017-09-25
windows
在內存位圖中繪圖,並顯示。代碼如下:
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); DeleteObject(hdcmem); DeleteObject(hBitmap); ReleaseDC(hwnd,hdc);
要創建多個內存位圖,可以多次調用CreateCompatibleDC和CreateCompatibleBitmap函數。
VC++在內存中繪圖