请教调试时出现的DrawText的问题?

woshiyigeren   2008-6-5 11:47 楼主
程序中有
pDC->DrawText(rcClient.Width()-size.cx,size.cy,str);
编译时显示
int __thiscall CDC::DrawTextW(const class CString &,struct tagRECT *,unsigned int)' : cannot convert parameter 2 from 'long' to 'struct tagRECT *'
        Conversion from integral type to pointer type requires reinterpret_cast, C-style cast or function-style cast
现在不知如何着手去改,望达人告知。多谢!

回复评论 (7)

        strGird=L"CH";
        dcMem.DrawText(strGird,CRect(0,200,10,210), DT_NOCLIP);
点赞  2008-6-5 11:54
哦应该是 pDC->DrawText(strGird,CRect(0,200,10,210), DT_NOCLIP);
点赞  2008-6-5 11:59
lz好好看错误提示;
里面明确指出了drawtext的函数声明方式,你根据提示做就行了。
DrawTextW(const class CString &,struct tagRECT *,unsigned int)
点赞  2008-6-5 13:17
对阿,错误提示都说不能把'long' 转换成 'struct tagRECT *'啦,自己改吧
点赞  2008-6-5 14:19
谢谢上面几位,我再试试。
点赞  2008-6-5 14:55
  1. virtual int DrawText (
  2. LPCTSTR lpszString,
  3. int nCount,
  4. LPRECT lpRect,
  5. UINT nFormat );

  6. int DrawText(
  7. const CString& str,
  8. LPRECT lpRect,
  9. UINT nFormat );

从楼主的程序看应该用的是第二种
pDC->DrawText(_T("test"),CRect(0,200,10,210), DT_NOCLIP);
点赞  2008-6-6 08:56
按照大家说的进行了修改,解决了问题,多谢大家了。
点赞  2008-6-6 09:36
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复