GDI双缓冲的问题。HBITMAPhBitmap (HBITMAP)::LoadImageA(NULL, test.bmp, IMAGE_BITMAP, 64, 64, LR_L
GDI双缓冲的问题。
HBITMAP hBitmap = (HBITMAP)::LoadImageA(NULL, "test.bmp", IMAGE_BITMAP, 64, 64, LR_LOADFROMFILE);
// 创建一个内存DC,所有绘制操作都绘制到该DC上
HDC memoryDC = ::CreateCompatibleDC(hdc);
// 将位图对象选入到内存DC上
::SelectObject(memoryDC, hBitmap);
// 将内存DC上的内容绘制到hdc 上
::BitBlt(hdc, 100, 100, 64, 64, memoryDC, 0, 0, SRCCOPY);
::DeleteDC(memoryDC);
首先,这个双缓冲写的没错吧?
这是绘制一个位图,
如果要绘制两个位图怎么写呢?
是不是再加一句:
::SelectObject(memoryDC, hBitmap2);
然后,如果要绘制3个位图是不是这样:
::SelectObject(memoryDC, hBitmap1);
::SelectObject(memoryDC, hBitmap2);
::SelectObject(memoryDC, hBitmap3);
最后:
::BitBlt(hdc, 100, 100, 64, 64, memoryDC, 0, 0, SRCCOPY);
??
[解决办法] 该回复于2011-11-14 11:16:29被版主删除