TeeChartPro 图表控件在VC++ 6.0 平台上的运用 (2009-05-12 09:42:53) 标签:杂谈 看了一些网上TeeChart 的例子,觉得不是很简捷,这里给一个我自己编的VC++6.0下的小例程。 TeeChart 图表控件的介绍网上搜一下就能了解个大概,推荐大家看软件安装完毕后的产品说明文档(有点英文基础就能看懂)。国内出了一本介绍它的书,编程环境是 Delphi,我习惯用VC++,所以就花了点时间把大致过程描述一下,以节省感兴趣的朋友看产品说明文档的时间。 第一步,启动VC++建立一个基于对话框程序的工程,下面是几个步骤的截图,相信用过VC++的朋友都很熟悉。 这样可以获得一个对话框资源,如下图: 第二步,插入TeeChartPro 的 ActiveX 控件(此控件在TeeChartPro 安装后就注册好了),过程如下图: 这时控件组工具栏的尾部会出现一个新的控件: 将这个TeeChartPro 控件拖放到对话框里,调整大小到合适为止。 第三步,设置TeeChart 控件的属性,本例程目的是画一个随机曲线。上一步已经在对话框上放置了TeeChart 图表控件,如下图: 选定TeeChart 控件,右键选择Properties: 点击Edit Chart...按钮,设置控件属性: 选择Series 表单,点击Add...按钮,加入一条Fast Line 曲线: 选择Legend 表单,去掉Visible 单选框里面的勾: 选择3D 表单,去掉3 Dimensions 单选框里面的勾: 接上篇 选择Tools 表单,添加TeeChart 工具,并作相关设置: 设置完毕后,对话框变为: 第四步,加入程序代码。 在 CMyTeeChartDlg 类的OnInitDialog()函数里添加下面的代码: // TODO: Add extra initialization here m_ctrlChart.Series(0).Clear(); m_ctrlChart.GetPage().SetMaxPointsPerPage(60); srand((int)time(0)); char strTime[25]; for(int i=0; i<60; i++) { itoa(i,strTime,10); int dTemper = rand()%100; m_ctrlChart.Series(0).AddXY(i,dTemper,strTime,RGB(255,0,0)); } m_ctrlChart.GetAxis().GetLeft().SetMinMax(0, 100); 这段代码生成60 个 0~ 100 之间的随机数,作为曲线显示数据。 利用Class Wizard 添加TeeChart 控件对象的OnMouseMove 消息处理函数: void CMyTeeChartDlg::OnMouseMoveTchart1(long Shift, long X, long Y) { // TODO: Add your control notification handler code here int mPoint = -1; double xValue = m_ctrlChart.Series(0)...