对于第一个问题,如果是UNICODE 用wcstol(),如果是ANSI的用aoti()或atol();对于第二个问题,你完全可以不在OnDraw()中绘制图形。这样的话效果会好许多。

解决方案 »

  1.   

    CString strTemp="234";
    char *p1=strTemp.GetBuffer(strTemp.GetLength());
    addr1=atoi(p1);
      

  2.   

    CString strTemp="234";
    char *p1=strTemp.GetBuffer(strTemp.GetLength());
    int addr1=atoi(p1);
      

  3.   


    CClientDC dc(this);
    dc.BitBlt(m_nX,m_nY,m_nWidth,m_nHeight,&m_dcMap,0,0,SRCCOPY);
      

  4.   

    先建一个内存的DC,在内存DC 中绘图,完成后BITBLT过去
      

  5.   

    谢谢诸位的回答,可是我还是没有试成功,能不能再详细一点呀。
    比如这段程序是不是写在OnDraw里的,m_dcMap是什么东东,我都不是很清楚。
      

  6.   

    哪位能再帮我看看呀。我这样写不行呀
    在OnDraw里加的: CDC dcMem;
    dcMem.CreateCompatibleDC(pDC);
    dcMem.Rectangle(10,10,100,100);
    CRect lRect;
    GetClientRect(lRect);
    lRect.NormalizeRect();
    pDC->BitBlt(0,0,lRect.Width(),lRect.Height(), &dcMem, 0,0, SRCCOPY);