如何在两个内存 DC 之间拷贝图像?
麻烦帮忙看一下错在哪里,多谢! PAINTSTRUCT ps;
HDC hDC = ::BeginPaint(m_hWnd, &ps); HDC hCanvasDC = ::CreateCompatibleDC(hDC);
SelectObject(hCanvasDC, m_hBitmap); // 位置被载入在 m_hBitmap HDC hBackDC = ::CreateCompatibleDC(hDC);
HBITMAP hBackBitmap = ::CreateCompatibleBitmap(hBackDC, 1024, 768);
SelectObject(hBackDC, hBackBitmap); BitBlt(hBackDC, 0,0,1024,768, hCanvasDC, 0,0,SRCCOPY);
// *** 这一句没有工作,hCanvasDC 中的图像同有被复制到 hBackDC 中 Rectangle(hBackDC,0,0,x,y); BitBlt(hDC, 0,0,1024,768, hBackDC, 0,0,SRCCOPY); DeleteObject(hBackBitmap);
DeleteDC(hBackDC);
DeleteDC(hDC);
::EndPaint(m_hWnd, &ps);
麻烦帮忙看一下错在哪里,多谢! PAINTSTRUCT ps;
HDC hDC = ::BeginPaint(m_hWnd, &ps); HDC hCanvasDC = ::CreateCompatibleDC(hDC);
SelectObject(hCanvasDC, m_hBitmap); // 位置被载入在 m_hBitmap HDC hBackDC = ::CreateCompatibleDC(hDC);
HBITMAP hBackBitmap = ::CreateCompatibleBitmap(hBackDC, 1024, 768);
SelectObject(hBackDC, hBackBitmap); BitBlt(hBackDC, 0,0,1024,768, hCanvasDC, 0,0,SRCCOPY);
// *** 这一句没有工作,hCanvasDC 中的图像同有被复制到 hBackDC 中 Rectangle(hBackDC,0,0,x,y); BitBlt(hDC, 0,0,1024,768, hBackDC, 0,0,SRCCOPY); DeleteObject(hBackBitmap);
DeleteDC(hBackDC);
DeleteDC(hDC);
::EndPaint(m_hWnd, &ps);
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货