左边是纯黑底,右边是纯白底
static int LOG_CHANGESIZE = 96;
static int LOG_CHANGESIZE_Height = 48;
HBITMAP hbmp3;
...
PAINTSTRUCT ps;
HDC hdc,hMemDC;
HBITMAP hBitmap, hOldBitmap;
case WM_PANIT:
{
hbmp3 = (HBITMAP)LoadImage(NULL, "testend.bmp", IMAGE_BITMAP, LOG_CHANGESIZE, LOG_CHANGESIZE_Height, LR_LOADFROMFILE);
hdc = BeginPaint(hWnd, &ps);
hMemDC = CreateCompatibleDC(hdc);
SelectObject(hMemDC, hbmp3);
BitBlt(hdc, 400, 100, LOG_CHANGESIZE/2, LOG_CHANGESIZE_Height, hMemDC,48, 0, SRCAND);
BitBlt(hdc, 400, 100, LOG_CHANGESIZE/2, LOG_CHANGESIZE_Height, hMemDC,0, 0, SRCPAINT);
ReleaseDC(hWnd, hMemDC);
DeleteDC(hMemDC);
...
}
最后效果
在窗体中背景色就去掉了