CDC *DC =this->GetDC();
CRect rc;
this->GetClientRect(&rc);
CDC bkDC;
bkDC.CreateCompatibleDC(DC);
CPen pen;
pen.CreatePen(PS_SOLID,2,RGB(0,255,0)); bkDC.SelectObject(&pen);
bkDC.Ellipse(20,20,200,200); bkDC.TextOut(0,0,_T("asdfsd")); DC->BitBlt(0,0,rc.Width(),rc.Height(),&bkDC,0,0,SRCCOPY);

解决方案 »

  1.   

    CBitmap memBitmap;       //创建与屏幕显示兼容的内存显示设备和位图       bkDC.CreateCompatibleDC(NULL);       memBitmap.CreateCompatibleBitmap(pDC,w,h);     //位图的大小同显示区       CBitmap *pOldBit=bkDC.SelectObject(&memBitmap);
    你的bkDC没有位图  往哪画?
      

  2.   

    CBitmap 好像是MFC专用库,有没有API里的类 CImage? 
      

  3.   

    CDC也是MFC专用。
    Win32用HDC和HBITMAP。