如题 以下代码加载位图后 坐标系的颜色就变了
void CYZView::OnDraw(CDC* pDC)
{
CDocument* pDoc = GetDocument();
// TODO: add draw code here
CDC  dc;     
CDC  *pdc = &dc;   
CBitmap bitmap;     
CBitmap* pOldBitmap;     
CRect client;     
CRect rect;     
//检取无效区 
pDC->GetClipBox(client);    
//检取整个客户区
GetClientRect(rect);     

if(dc.CreateCompatibleDC(pDC)) 
{  
//创建一个与pDC兼容的内存设备环境     
if(bitmap.CreateCompatibleBitmap(pDC,rect.Width(),rect.Height())) 
{   
//创建一与pDC兼容的位图,大小为整个客户区     
//使dc与pDC具有同样的映射关系  
OnPrepareDC(pdc,NULL);   
//将位图选入内存环境   
pOldBitmap = pdc->SelectObject(&bitmap);  
//使dc的整个客户区都成无效区 
pdc->SelectClipRgn(NULL);    
//再“与上”检取的无效区,使内存环境与pDC检取的无效区相等 
dc.IntersectClipRect(client);    
}     
}     

CBrush   brush;     
if(!brush.CreateSolidBrush(RGB(0,0,0)))   
return;     
brush.UnrealizeObject();   
//将dc的作图区刷新成背景色  
dc.FillRect(client,&brush);     
    
//将所有的画图对象在内存裁减区内重画      
//在dc中绘图   
CPen pen;
pen.CreatePen(PS_SOLID,1,RGB(0,0,255));
CPen *pOldPen = dc.SelectObject(&pen);
CRect rc;
GetWindowRect(rc);
m_height = rc.Height();
m_width = rc.Width(); dc.MoveTo(10,rc.Height()/2);
dc.LineTo(rc.Width()-10,rc.Height()/2);
dc.MoveTo(rc.Width()/2,10);
dc.LineTo(rc.Width()/2,rc.Height()-10);
dc.SelectObject(pOldPen); dc.TextOut(rc.Width()/2-1,0,"z");
dc.TextOut(rc.Width()-10,rc.Height()/2-5,"y"); CPen pen2;
pen2.CreatePen(PS_SOLID,1,RGB(255,0,0));
CPen *pOldPen2 = dc.SelectObject(&pen2);
dc.MoveTo(10,m_zpos);
dc.LineTo(rc.Width()-10,m_zpos);
dc.SelectObject(pOldPen);  //Copy Bitmap   
//将内存裁减区的位图拷贝到窗口裁减区 
pDC->BitBlt(0,0,rect.Width(),rect.Height(),pdc,0,0,SRCCOPY);    
    //dc.SelectObject(pOldBitmap); CBitmap bmp;
bmp.LoadBitmap(IDB_BITMAP1);
CDC dc2;
dc2.CreateCompatibleDC(pDC);
dc2.SelectObject(&bmp);
    pDC->BitBlt(0,0,rect.Width(),rect.Height(),&dc2,0,0,MERGEPAINT);//MERGEPAINT}