欢迎来到天天文库
浏览记录
ID:40582110
大小:86.00 KB
页数:7页
时间:2019-08-04
《VC中使用TeeChart绘制实时曲线11》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、VC中使用TeeChart绘制实时曲线上网找了一个teechart8的Activex版本,在VC6下使用正常,感觉功能挺强大的,于是决定认真用一用,我是完全完全的新手,请高手们直接忽略我,或者给我提些好的建议。 我得到的是一个teechart8.ocx文件,这是Activex的文件,使用之前先注册一下,将该文件放入系统目录下/c:/WINDOWS中,然后打开命令提示符,或者直接在运行窗口输入:regsvr32TeeChart8.ocx,然后会有一个注册成功的提示框,说明我们的ActiveX控件注册成功,在VC6下就可以使用了。如果不想使用了,可以使用regsvr32-uTeeCh
2、art8.ocx解除对teechart8的注册。 我的第一个任务是熟悉teechart控件。首先新建一个基于MFC的exe工程,选择对话框,其他默认。进入工程以后可以看到类视图中只有系统生成的默认的几个类,我先在类视图中在工程名上点右键新建两个文件夹,一个叫src,一个叫tee,然后把默认生成的几个类(dlg,app,about三个类)拖放到src文件夹中。做这一步实际上没有什么实质的意义,只是为了看起开比较方便,因为一会儿添加了teechart8以后会有很多的类添加进来,看起来非常困难,所以先提前把他们分开。 闲话不多说,进入资源视图,点击主对话框后,删除todo那个静态文本
3、。下一步我们要在这个对话框上放置一个teechart图表,但是工具栏中没有,所以需要先添加一下。依次点击工程-》增加到工程-》componentsandcontrols,进入对话框后选择registeredActiveXcontrols,找到TeeChartProActivexcontrolv8后点击insert,会弹出添加类的对话框,左边的列表里面是可以选择添加的类,现在我还不太了解具体类的作用,所以只好一并添加了,点击确定以后回到资源视图会发现工具栏下面多累一个圆形的小图标,这就是我们的teechart8控件了。这时注意到,类视图中已经为我们添加了一堆的类,我把他们都放到tee
4、文件夹中,看起来舒服多了。 下一步回到资源视图,将工具箱中的teechart控件托入对话框,改变一下大小,稍作修改,界面设计就完成了。下一步要让teechart输出一个图形,那这次的任务就大功告成了。在对话框上右键点击图标控件,点击属性,选择teechartproediter选项卡,点击editchart,出现一个名为edit的对话框,该对话框非常重要,包括了teechart的各种属性。简要介绍一下这些属性,我的参考资料是“TEECHART应用技术详解”一书,该书是通过delphi描述的,我没有学过delphi,勉强看着。首先就是series选项,该属性包含的是需要绘制的图表的类
5、型,如曲线,饼图,柱状图,等等等等,种类很多,这也是teechart的优势。其次是chart,这个选项包含了图表的显示部分的很多属性,如坐标轴,背景,标题,等等。data选项中就是绘制图表需要的数据。export选项中包含了一些将图表导出为图片等格式的选项。print选项包含打印的设置。themes包含图表的主题,主要是显示方式。 介绍完这写选项以后,试着新建了一个serie,我建立的是fastline,准备做一个实时曲线的显示,于是又更改了一下标题,改为实时曲线,并将chart选项中的legend的Visible前面的勾去掉。OK,编译,运行。发现什么都没有~~~别说实时曲线了
6、,就连曲线也没有一根。其实很容易理解,画曲线得有数据吧,数据都没有怎么给你画呢?所以,还得给该曲线填充一点数据。最简单的方法就是,直接在data选项中添加一些数据,然后运行,发现我们可爱的图表显示出曲线了。好,熟悉teechart的基本任务完成。下一次我接着在这个基础上试着绘制实时曲线。实时曲线 接着上一篇文章,本次我的任务是绘制一个实时曲线图,可以实现坐标轴以及曲线随着数据的增加而移动。 要完成该功能,首先应该为该图表指定一个对象用于操作。单击图表,选择建立类向导,点击membervariables选项卡,点击addvariable按钮,弹出添加变量对话框,输入m_chart后
7、点击OK,一个与该图表控件对应的控件变量就建立完成了。进入类视图,看到dlg类中多了一个m_chart变量。 首先,我们利用该变量为该图表填充随机的初始数据。在使用之前,需要包含一些头文件,于是,在XXXDlg.cpp的上面添加如下代码: #include"tchart.h"#include"axis.h"#include"axes.h"#include"scroll.h"#include"series.h" 然后在OnInitDialog()方法中添加如下代码
此文档下载收益归作者所有