在VS2008中,给一个基于对话框的MFC程序添加mschart控件时遇到的问题
插入mschart后,添加该控件的变量,会在对话框构造函数中加入一个”,m_chart(0)“,代码如下:CtestDlg::CtestDlg(CWnd*pParent/...
插入mschart后,添加该控件的变量,会在对话框构造函数中加入一个”, m_chart(0)“,
代码如下:
CtestDlg::CtestDlg(CWnd* pParent /*=NULL*/)
: CDialog(CtestDlg::IDD, pParent)
, m_Chart(0)
{
m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
}
然后编译会出现以下错误:
错误 1 error C2664: “CMschart1::CMschart1(const CMschart1 &)”: 不能将参数 1 从“int”转换为“const CMschart1 &” c:\users\zhang boxuan\desktop\test\test\testdlg.cpp 53 test
请问这是怎么回事? 展开
代码如下:
CtestDlg::CtestDlg(CWnd* pParent /*=NULL*/)
: CDialog(CtestDlg::IDD, pParent)
, m_Chart(0)
{
m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
}
然后编译会出现以下错误:
错误 1 error C2664: “CMschart1::CMschart1(const CMschart1 &)”: 不能将参数 1 从“int”转换为“const CMschart1 &” c:\users\zhang boxuan\desktop\test\test\testdlg.cpp 53 test
请问这是怎么回事? 展开
2个回答
展开全部
CMschart1::CMschart1(const CMschart1 &)参数类型不是int,需要const CMschart1,所以错误
具体查看类CMschart1的头文件中关于构造函数的定义吧。
具体查看类CMschart1的头文件中关于构造函数的定义吧。
追问
可是这段代码是VS自动生成的,一添加mschart控件的变量就自动生成的。而且为什么这里使用添加变量向导的是候,自动添加的类明是CMschart1,我看网上的例子都是CMSchart,这是为什么?谢谢啦
追答
1、大概可以确定你的m_Chart类型定义错了,你定义成int类型了
不应该定义为数值类型,应该定义为控件类型,在定义的向导上可以选择。
2、添加控件以后,双击进行类的创建时,默认类名称一般都为CMschart1,
手动更改为CMschart就可以了。(CMschar1也不影响使用)
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
其实好像还是mschart注册出问题了。。。我直接copy的另外一个项目的mschart.h和mschart.cpp,然后运行就没有什么问题了。。。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询