深入浅出CChart 每日一课——快乐高四第十二课 必也正名,Win32标准控件ChartCtrl之初识

各位用过CChart的小伙伴们,笨笨的这个控件还算好使吧。

慢着,慢着,让我想想,CChart是一个控件吗?好像顶多就是一个类库吧,根本就不是正儿八经的控件。

呵呵,本节课就给大家介绍一下CChart怎么作为一个Windows标准控件来使用。

还是按前面的规矩吧。

第一步,建立一个基于对话框的MFC程序LessonA12。

第二步,在LessonA12.h文件的头部加入CChart头文件和函数库的引用。

第三步,在主对话框中删除掉原来那个标签,并添加一个Custom Control控件。设置其ID为IDC_CHART,并设置其Class为ChartCtrl。这里Class的设置是关键,大小写无所谓,但一个字母也不能差。

如图所示。

 

ChartCtrl就是笨笨编写的这个Windows标准控件的类名,和edit、static等标准控件类似。所谓标准控件,无非就是Windows下注册的一个窗口类,笨笨用“ChartCtrl”这个名字注册了一个窗口类,大家可以直接使用。

第四步,打开LessonA12Dlg.cpp,在OnInitDialog函数里面,添加如下代码。

 

// TODO: Add extra initialization here
	CWnd *pWnd = GetDlgItem(IDC_CHART);
	CChart *chart = GetChart(pWnd->m_hWnd);
	int n=100;
	for(int i=-n; i<n; i++)
	{
		chart->AddPoint2D(i/(double)n, i*i/double(n*n));
	}


注意这里的代码,我们利用GetChart()获得了一个CChart类对象的指针。这个函数定义如下。

CChart	*GetChart(HWND hWnd);

我们看到这个函数非常简单,只有一个参数,这个参数是一个窗口句柄。这里就要注意了,不是任何窗口都能获得CChart指针的哟,使用这个函数之前请确认这个窗口是一个ChartCtrl控件窗口。

获得CChart指针以后,需要干什么我想小伙伴们都明白了,就像洞房之夜,不需要笨笨来指导吧,哈哈。

好了,现在运行程序,效果如图。

可以看到,利用ChartCtrl控件编程也是非常非常简洁的。

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值