解决办法:
解决办法:
1 int CWndFlashDemo::OnCreate(LPCREATESTRUCT lpCreateStruct) 2 { 3 auto style = GetWindowLong(m_hWnd, GWL_STYLE); 4 style = style | WS_CLIPCHILDREN | WS_CLIPSIBLINGS; 5 SetWindowLong(m_hWnd, GWL_STYLE, style); 6 }
解决办法:
解决办法:
1 dc.FillRect(rect,&brush);
1 BOOL CMyWin::OnEraseBkgnd(CDC* pDC) 2 { 3 return TRUE; 4 }
1 RECT rc; 2 GetClientRect(g_hwnd,&rc); 3 Bitmap bmp(int(rc.right),int(rc.bottom)); 4 5 Graphics bmpGraphics(&bmp); 6 bmpGraphics.SetSmoothingMode(SmoothingModeAntiAlias); 7 8 /*Drawing on bitmap*/ 9 SolidBrush bkBrush(Color(0,0,0)); 10 bmpGraphics.FillRectangle(&bkBrush,0,0,rc.right,rc.bottom); 11 12 /*Drawing on DC*/ 13 Graphics graphics(hdc); 14 /*Important! Create a CacheBitmap object for quick drawing*/ 15 CachedBitmap cachedBmp(&bmp,&graphics); 16 graphics.DrawCachedBitmap(&cachedBmp,0,0);
1 RECT rc; 2 GetClientRect(hwnd,&rc); 3 HDC hMemDc = CreateCompatibleDC(hdc); 4 HBITMAP hBmp = CreateCompatibleBitmap(hdc,rc.right,rc.bottom); 5 HBITMAP hOldBmp = (HBITMAP)SelectObject(hMemDc,hBmp); 6 //在此使用hMemDc进行 GDI 绘制 7 BitBlt(hdc,0,0,rc.right,rc.bottom,hMemDc,0,0,SRCCOPY); 8 SelectObject(hMemDc,hOldBmp); 9 DeleteObject(hBmp); 10 DeleteObject(hMemDc);