求各位大神帮我看看这段代码的问题
void CmfcView::OnMouseMove(UINT nFlags, CPoint point)
{
// TODO: 在此添加消息处理程序代码和/或调用默认值
CDC *pDC=GetDC();
char tbuf[80];
sprintf_s(tbuf,_T("Position(%3d,%3d)"),point x,point Y);
// 输出鼠标当前位置
pDC->TextOut(20,20,&tbuf);
CView::OnMouseMove(nFlags, point);
}
问题是
d:\my documents\visual studio 2005\projects\mfc\mfc\mfcview.cpp(309) : error C2146: 语法错误 : 缺少“)”(在标识符“x”的前面)
d:\my documents\visual studio 2005\projects\mfc\mfc\mfcview.cpp(309) : error C2665: “sprintf_s”: 2 个重载中没有一个可以转换所有参数类型
c:\program files\microsoft visual studio 8\vc\include\stdio.h(309): 可能是“int sprintf_s<80>(char (&)[80],const char *,...)”
c:\program files\microsoft visual studio 8\vc\include\stdio.h(308): 或“int sprintf_s(char *,size_t,const char *,...)”
试图匹配参数列表“(char [80], const wchar_t [18], CPoint)”时
d:\my documents\visual studio 2005\projects\mfc\mfc\mfcview.cpp(309) : error C2059: 语法错误 : “)”
d:\my documents\visual studio 2005\projects\mfc\mfc\mfcview.cpp(311) : error C2664: “BOOL CDC::TextOutW(int,int,const CString &)”: 不能将参数 3 从“char (*__w64 )[80]”转换为“const CString &”
原因如下: 无法从“char (*__w64 )[80]”转换为“const CString”
无构造函数可以接受源类型,或构造函数重载决策不明确
void CmfcView::OnMouseMove(UINT nFlags, CPoint point)
{
// TODO: 在此添加消息处理程序代码和/或调用默认值
CDC *pDC=GetDC();
char tbuf[80];
sprintf_s(tbuf,_T("Position(%3d,%3d)"),point x,point Y);
// 输出鼠标当前位置
pDC->TextOut(20,20,&tbuf);
CView::OnMouseMove(nFlags, point);
}
问题是
d:\my documents\visual studio 2005\projects\mfc\mfc\mfcview.cpp(309) : error C2146: 语法错误 : 缺少“)”(在标识符“x”的前面)
d:\my documents\visual studio 2005\projects\mfc\mfc\mfcview.cpp(309) : error C2665: “sprintf_s”: 2 个重载中没有一个可以转换所有参数类型
c:\program files\microsoft visual studio 8\vc\include\stdio.h(309): 可能是“int sprintf_s<80>(char (&)[80],const char *,...)”
c:\program files\microsoft visual studio 8\vc\include\stdio.h(308): 或“int sprintf_s(char *,size_t,const char *,...)”
试图匹配参数列表“(char [80], const wchar_t [18], CPoint)”时
d:\my documents\visual studio 2005\projects\mfc\mfc\mfcview.cpp(309) : error C2059: 语法错误 : “)”
d:\my documents\visual studio 2005\projects\mfc\mfc\mfcview.cpp(311) : error C2664: “BOOL CDC::TextOutW(int,int,const CString &)”: 不能将参数 3 从“char (*__w64 )[80]”转换为“const CString &”
原因如下: 无法从“char (*__w64 )[80]”转换为“const CString”
无构造函数可以接受源类型,或构造函数重载决策不明确
解决方案 »
- VC6.0 不能改变列表框的风格
- 读取文件乱码的问题,请高手指示!在线等......
- 调用基于CFormView的对话框
- 1000分求ReportCtrl,请问哪里有正式版的Bcg8.5或codejock的最新版本下载啊?
- 关于客户端使用WSAEventSelect的问题,大家猜猜什么问题,给100分,谢谢
- vc中有没有应用程序将dll导成lib?
- 选择什么样的数据库连接好?
- 送分!!! 怎么把HTML帮助文件专为 已编译的格式 *.chm格式?
- 请问在哪可找到xp风格的程序库?
- WinSocket:什么是“The specified address is not available from the local machine.”
- 关于ADO与access数据库连接的问题求教(都研究了八天了)
- 关于类似百度贴吧的论坛,数据库应该如何设计
sprintf_s(tbuf,_T("Position(%3d,%3d)"),point.x,point.y);
s.Format(_T("Position(%3d,%3d)"),point.x,point.Y);
pDC->DrawText(s,20,20,100,100,DT_LEFT|DT_TOP);
void CmfcView::OnMouseMove(UINT nFlags, CPoint point)
{
CDC *pDC=GetDC();
CString strBuf;
strBuf.Format(_T("Position(%3d,%3d)"),point.x,point.y);
// 输出鼠标当前位置
pDC->TextOut(20,20, strBuf);
CDialog::OnMouseMove(nFlags, point);
}