这几天有个朋友想在WTL下使用ChartCtrl控件,因此笨笨在这里也写一个简单的教程。
要使用WTL当然要先安装它。
笨笨在这里介绍两个例子,一个是WTL对话框界面,一个是WTL单文档SDI界面。
第一步,首先用AppWizard建立一个基于对话框的WTL程序LessonA16。
第二步,在主对话框资源IDD_MAINDLG上添加一个Custom Control控件,其ID设置为IDC_CHART,class设置为ChartCtrl。
第三步,拷贝库文件。
第四步,打开maindlg.h,在其头部加入头文件和导入库文件的引用。
第五步,在OnInitDialog函数里面,找到returnTRUE;这句话,在其前面添加代码如下。
HWND hWnd = GetDlgItem(IDC_CHART); CChart *chart = GetChart(hWnd); int i; for(i=-10; i<=10; i++) { chart->AddPoint2D(i, i*i); }
第一步,首先用AppWizard建立一个基于对话框的WTL单文档SDI程序LessonA16_1。
第二步,拷贝库文件。
第三步,打开LessonA16_1view.h文件,在其头部加入CChart头文件和导入库文件的引用。
第四步,响应WM_CREATE消息。
在BEGIN_MSG_MAP和END_MSG_MAP之间,加入下面一行。MESSAGE_HANDLER(WM_CREATE, OnCreate)
LRESULT OnCreate(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& /*bHandled*/) { HWND hWnd = CreateSubChartWnd(m_hWnd, kTypeXY, _T("Chart"), 0, 0, 600, 400); CChart *chart = GetChart(hWnd); for(int i=-10; i<=10; i++) { chart->AddPoint2D(i, i*i); } return 0; }
这里笨笨是用CreateSubChartWnd创建的窗口,实际上这是CreateWindow的一个简单封装,同学们完全可以用CreateWindow来实现。
好了,第二个程序也已经完成,效果如下。
这节课主要是介绍笨笨新增加的ChartCtrl控件在WTL下的使用,供有需要的小伙伴参考。
版权声明:本文为博主原创文章,未经博主允许不得转载。
深入浅出CChart 每日一课——快乐高四第十六课 老马识途,ChartCtrl控件在WTL中的使用
原文地址:http://blog.csdn.net/benbenlixin/article/details/48376517