OnMouseMove()
{
  CPoint pt=point;
  //
  //
  //
  CDC *pDC=GetDC();
  pDC->TextOut(20,20,    );
  ReleaseDC(pDC);
}
请问在//后面应该怎么加入将pt.x和pt.y变成字符串的语句呢?
pt.x和pt.y是LONG   TextOut的第三个参数是CString
我试了用 unsigned char* || CString || LPCTSTR ||  char*  来转换,都不行啊
虽然每次都有警告但是能通过,可是只要将鼠标移到窗口区就会弹出内存不能为读的出错
请问哪里错了啊?我只是想把鼠标在用户区里的坐标随时的变化的在窗口上显示出来
是不是还要有刷新的语句呢?

解决方案 »

  1.   

    CDC *pDC=GetDC();
    CString msg;
    msg.Format("%d,%d",pt.x,pt.y);
      pDC->TextOut(20,20, msg   );
      ReleaseDC(pDC);
      

  2.   

    多谢masterz
    请问是不是我上面说的强制转换的方法是不正确的》》?不可以那样去转化呢?
      

  3.   

    CPoint can not be casted to CString, otherwise you get an error
      

  4.   

    不要转化,,放到string里就可以了
      

  5.   

    CDC *pDC=GetDC();
    CString msg;
    msg.Format("%d,%d",pt.x,pt.y);
      pDC->TextOut(20,20, msg   );
      ReleaseDC(pDC);
      

  6.   

    CDC *pDC=GetDC();
    CString msg;
    msg.Format("%d,%d",pt.x,pt.y);
      pDC->TextOut(20,20, msg   );
      ReleaseDC(pDC);