HBITMAP hOldBmp;
HDC hdc, memdc1, memdc2;
RECT rc;
GetWindowRect(hWnd, &rc);
hdc = GetDC(hWnd);
memdc1 = CreateCompatibleDC(hdc);
memdc2 = CreateCompatibleDC(hdc);hOldBmp = SelectObject(memdc1, hNewBitmap1); // hNewBitmap1 是之前已经加载好的位图
DeleteObject(hOldBmp);
hOldBmp = SelectObject(memdc1, hNewBitmap2); // hNewBitmap1 是之前已经加载好的位图
DeleteObject(hOldBmp);
//下面的 w1 和 h1 是hNewBitmap1位图的宽和高,之前已获取。
BitBlt(memdc2, 0, 0, w1, h1, memdc1, 0, 0, SRCCOPY); // 把位图 hNewBitmap1 画到 hNewBitmap2 上。
BitBlt(hdc, 0, 0, rc.right - rc.left, rc.bottom - rc.top, memdc2, 0, 0, SRCCOPY); // 显示画的结果,为什么位图 hNewBitmap1 没有画到 hNewBitmap2 上?
HDC hdc, memdc1, memdc2;
RECT rc;
GetWindowRect(hWnd, &rc);
hdc = GetDC(hWnd);
memdc2 = CreateCompatibleDC(hdc);
memdc1 = CreateCompatibleDC(memdc2); hOldBmp = SelectObject(memdc2 , hNewBitmap2); // hNewBitmap1 是之前已经加载好的位图
hOldBmp = SelectObject(memdc1, hNewBitmap1); // hNewBitmap1 是之前已经加载好的位图
//下面的 w1 和 h1 是hNewBitmap1位图的宽和高,之前已获取。
BitBlt(memdc2, 0, 0, w1, h1, memdc1, 0, 0, SRCCOPY); // 把位图 hNewBitmap1 画到 hNewBitmap2 上。
BitBlt(hdc, 0, 0, rc.right - rc.left, rc.bottom - rc.top, memdc2, 0, 0, SRCCOPY); // 把位图 hNewBitmap1 画到