【初学者有关问题】为什么创建了画布显示不了
【菜鸟问题】为什么创建了画布显示不了
CDC *pDC = GetDC();
CDC memDC;
memDC.CreateCompatibleDC(pDC);
CRect rect;
GetClientRect(&rect);
CBitmap bmp,*pOldbmp;
bmp.CreateCompatibleBitmap(pDC,rect.Width(),rect.Height());
pOldbmp = memDC.SelectObject(&bmp);
ReleaseDC(pDC);
ReleaseDC(&memDC);
画布没有显示出来,我的预期效果就是点击一个按钮,产生一个全屏的白色区域
然后可以在上面绘图,这个过程要怎么做呀
------解决方案--------------------
你的绘图操作呢?FillRect/FillSolidRect(),BitBlt操作呢?都没有啊;
CDC *pDC = GetDC();
CDC memDC;
memDC.CreateCompatibleDC(pDC);
CRect rect;
GetClientRect(&rect);
CBitmap bmp,*pOldbmp;
bmp.CreateCompatibleBitmap(pDC,rect.Width(),rect.Height());
pOldbmp = memDC.SelectObject(&bmp);
ReleaseDC(pDC);
ReleaseDC(&memDC);
画布没有显示出来,我的预期效果就是点击一个按钮,产生一个全屏的白色区域
然后可以在上面绘图,这个过程要怎么做呀
------解决方案--------------------
你的绘图操作呢?FillRect/FillSolidRect(),BitBlt操作呢?都没有啊;
- C/C++ code
CDC *pDC = GetDC(); CDC memDC; memDC.CreateCompatibleDC(pDC); CRect rect; GetClientRect(&rect); CBitmap bmp,*pOldbmp; bmp.CreateCompatibleBitmap(pDC,rect.Width(),rect.Height()); pOldbmp = memDC.SelectObject(&bmp); CBrush br(RGB(255, 255, 255)); memDC.FillRect(&rect, &br); pDC->BitBlt(0, 0, rect.Width(), rect.Height(), &memDC, 0, 0, SRCCOPY); memDC.SelectObject(pOldbmp); bmp.DeleteObject(); ReleaseDC(&memDC); ReleaseDC(pDC);