重点:创建CChartCtrl控件有2种方式
1、直接创建CChartCtrl
2、窗体上添加Custom Control(切记一定不能是Static Text或者Picture Control,否则无法响应鼠标消息),然后根据ID关联CChartCtrl控件,初始化代码如下:
void InitChartCtrl(CChartCtrl& chartCtrl, TChartString axisXLabel, TChartString axisYLabel, TChartString titleLabel)
{
//去掉边框
//chartCtrl.ModifyStyleEx(WS_EX_CLIENTEDGE, NULL, SWP_DRAWFRAME);
//chartCtrl.ModifyStyle(WS_BORDER, 0);
chartCtrl.SetEdgeType(EDGE_ETCHED);
chartCtrl.SetPanEnabled(TRUE);
chartCtrl.SetZoomEnabled(TRUE);
//创建标准轴底部轴
CChartStandardAxis* pAxisX = chartCtrl.CreateStandardAxis(CChartCtrl::BottomAxis);
//pAxisX->SetAutomatic(true);//设置自动缩放
pAxisX->SetMinMax(0, 1024);//设置显示范围
pAxisX->GetGrid()->SetVisible(true);
//设置标题
pAxisX->GetLabel()->SetText(axisXLabel);
pAxisX->GetLabel()->SetColor(RGB(0, 0, 0));
pAxisX->GetLabel()->SetFont(140, _T("微软雅黑"));
//创建标准轴左轴
CChartAxis* pAxisY = chartCtrl.CreateStandardAxis(CChartCtrl::LeftAxis);
//pAxisY->SetAutomatic(true);//设置Y轴为可缩放
pAxisY->SetMinMax(10.0, 80.0);
pAxisY->GetGrid()->SetVisible(true);
//设置标题
pAxisY->GetLabel()->SetText(axisYLabel);
pAxisY->GetLabel()->SetColor(RGB(0, 0, 0));
pAxisY->GetLabel()->SetFont(96, _T("微软雅黑"));
//设置背景颜色
chartCtrl.SetBackGradient(RGB(255, 255, 255), RGB(255, 255, 255), gtVertical);
//设置标题颜色
chartCtrl.GetTitle()->SetColor(RGB(0, 0, 0));
//设置标题字体大小
chartCtrl.GetTitle()->SetFont(96, _T("微软雅黑"));
//设置图标标题
chartCtrl.GetTitle()->AddString(titleLabel);
CChartLineSerie* pLineSerie = (CChartLineSerie*)chartCtrl.CreateLineSerie();
pLineSerie->SetColor(RGB(0, 255, 0));
pLineSerie->SetWidth(1);
pLineSerie->SetSmooth(true);
}