MFC用 Pen(Color:Black)跟font(L"宋体" 10); 这样的函数会报错

MFC用 Pen(Color::Black)和font(L"宋体", 10); 这样的函数会报错
求指点MFC用 Pen(Color:Black)跟font(L"宋体" 10); 这样的函数会报错

CString strNum;
Font font(L"宋体", 10);
strNum = L"0";
graph.DrawString(strNum, -1, &font, 
PointF(8, 290), &SolidBrush(Color::Black));

for (int i = 0; i < 256; i += 5)
{
if (i % 50 == 0)
graph.DrawLine(&Pen(Color::Black), 10 + i, 280, 10 + i, 286);
else if (i % 10 == 0)
graph.DrawLine(&Pen(Color::Black), 10 + i, 280, 10 + i, 283);
}



报错:
C:\Users\colefet\Desktop\文件\毕设\image\image\HistogramDlg.cpp(197) : error C2065: 'Font' : undeclared identifier
C:\Users\colefet\Desktop\文件\毕设\image\image\HistogramDlg.cpp(197) : error C2146: syntax error : missing ';' before identifier 'font'
C:\Users\colefet\Desktop\文件\毕设\image\image\HistogramDlg.cpp(197) : error C2065: 'font' : undeclared identifier
C:\Users\colefet\Desktop\文件\毕设\image\image\HistogramDlg.cpp(199) : error C2228: left of '.DrawString' must have class/struct/union type
C:\Users\colefet\Desktop\文件\毕设\image\image\HistogramDlg.cpp(200) : error C2065: 'PointF' : undeclared identifier
C:\Users\colefet\Desktop\文件\毕设\image\image\HistogramDlg.cpp(200) : error C2653: 'Color' : is not a class or namespace name
C:\Users\colefet\Desktop\文件\毕设\image\image\HistogramDlg.cpp(205) : error C2228: left of '.DrawLine' must have class/struct/union type
MFC GDI 双环重绘图

------解决方案--------------------
http://www.cppblog.com/Lee7/archive/2009/04/28/81292.html
------解决方案--------------------
楼主应该看看MSDN上关于GDI+相关类的说明,例如Graphics类。

GDI+的文本绘制方法中所有涉及到字符串类型的参数都是UNICODE的WCHAR类型,而你调用的时候传递的却是MFC的CString类,明显的驴唇不对马嘴,应该使用strNum.GetString()方法获得字符串再传递给graph.DrawString()。