想用MSChart控件做动态曲线显示,创建了对象CMSChart m_Chart;
void CMschartTestDlg::InitChart()
{
VARIANT var;
m_Chart.SetColumnCount(1); //设置曲线条数
m_Chart.SetRowCount(31); //一条曲线有32个点
m_Chart.SetTitleText("光谱仪");
m_Chart.SetChartType(3);//
m_Chart.SetShowLegend(TRUE);
m_Chart.SetStacking(TRUE);
//X轴
m_Chart.GetPlot().GetAxis(0,var).GetCategoryScale().SetAuto(FALSE); // 不自动标注X轴刻度
......
}
单步调试至下面的InvokeHelper()出现Unhandled Exception in **.exe:0XC0000005: Access Violation
CVcAxis CVcPlot::GetAxis(long axisID, const VARIANT& Index)
{
LPDISPATCH pDispatch;
static BYTE parms[] =
VTS_I4 VTS_VARIANT;
InvokeHelper(0x1f, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&pDispatch, parms,
axisID, &Index);
return CVcAxis(pDispatch);
}
void CMschartTestDlg::InitChart()
{
VARIANT var;
m_Chart.SetColumnCount(1); //设置曲线条数
m_Chart.SetRowCount(31); //一条曲线有32个点
m_Chart.SetTitleText("光谱仪");
m_Chart.SetChartType(3);//
m_Chart.SetShowLegend(TRUE);
m_Chart.SetStacking(TRUE);
//X轴
m_Chart.GetPlot().GetAxis(0,var).GetCategoryScale().SetAuto(FALSE); // 不自动标注X轴刻度
......
}
单步调试至下面的InvokeHelper()出现Unhandled Exception in **.exe:0XC0000005: Access Violation
CVcAxis CVcPlot::GetAxis(long axisID, const VARIANT& Index)
{
LPDISPATCH pDispatch;
static BYTE parms[] =
VTS_I4 VTS_VARIANT;
InvokeHelper(0x1f, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&pDispatch, parms,
axisID, &Index);
return CVcAxis(pDispatch);
}
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货