至今为止,笨笨都是用老古董VC6给同学们介绍CChart的功能的。虽然笨笨已经说过,CChart在高版本VC下完全可以使用,但无图无真相,很黄很暴力,很多同学还是持怀疑态度。
这一课笨笨用白富美VS2010给大家演示一下CChart的编程。
有两种使用高版本VC的方法。
一种是用高版本VC打开已有的VC6工程,VC自动把VC6工程升级成高版本VC的解决方案,然后再用高版本VC编译。这一招笨笨用得最多,但估计不适合大多数同学,因为这些同学连VC6见都没见过,怎么能建立VC6工程呢。因此,这里就不介绍这种方法了。
第二种当然是直接使用高版本VC了,下面就开始演示这种方法。
第一步,打开VS2010。
第二步,选择File-->New-->Project,建立一个名为Lesson19的MFC Application。
向导中选择MFC Standard,然后直接Finish。
第三步,拷贝5个CChart库文件到Lesson19文件夹中。
第四步,在Lesson19View.h中,添加Chart库的头文件和库文件引用。
#include "Chart.h"
#if defined(_UNICODE) || defined(UNICODE)
# pragma comment(lib,"CChartu.lib")
#else
# pragma comment(lib,"CChart.lib")
#endif
using namespace NsCChart;
第五步,在CLesson19View类中添加一个CChartWnd成员变量。
CChartWnd m_ChartWnd;
第六步,利用ClassWizard给CLesson19View类添加WM_CREATE和WM_DESTROY的处理函数。
第七步,修改OnCreate和OnDestroy函数如下。
int CLesson19View::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
if (CView::OnCreate(lpCreateStruct) == -1)
return -1;
// TODO: Add your specialized creation code here
m_ChartWnd.Attach(m_hWnd, kTypePie);
m_ChartWnd.GetChart()->AddPie(40);
m_ChartWnd.GetChart()->AddPie(30);
m_ChartWnd.GetChart()->AddPie(30);
m_ChartWnd.GetChart()->SetPieTitle(_T("白富美"), 0);
m_ChartWnd.GetChart()->SetPieTitle(_T("大舅子"), 1);
m_ChartWnd.GetChart()->SetPieTitle(_T("二舅子"), 2);
m_ChartWnd.GetChart()->SetTitle(_T("百亿富翁家产继承权"));
return 0;
}
void CLesson19View::OnDestroy()
{
CView::OnDestroy();
// TODO: Add your message handler code here
m_ChartWnd.Detach();
}
第八步,注意这一步,修改项目属性,取消Unicode属性。
为什么要这样呢,因为笨笨给大家编译的CChart版本是非Unicode的。当然同学们真的需要使用Unicode的话,可以找笨笨索取Unicode版本的CChart。
打完收工!!
程序运行结果如下。
真正的白富美来了吧,哈哈哈哈(周氏招牌笑声)。
大家看到了,VS2010的编程步骤和VC6实际没有什么区别。虽然笨笨使用VC6,但屌丝也能逆袭白富美哟。