VC中使用TeeChart绘制实时曲线

上传人:小** 文档编号:134718891 上传时间:2022-08-13 格式:DOC 页数:4 大小:109KB
收藏 版权申诉 举报 下载
VC中使用TeeChart绘制实时曲线_第1页
第1页 / 共4页
VC中使用TeeChart绘制实时曲线_第2页
第2页 / 共4页
VC中使用TeeChart绘制实时曲线_第3页
第3页 / 共4页
资源描述:

《VC中使用TeeChart绘制实时曲线》由会员分享,可在线阅读,更多相关《VC中使用TeeChart绘制实时曲线(4页珍藏版)》请在装配图网上搜索。

1、VC中使用TeeChart绘制实时曲线上网找了一个teechart8的ActiveX版本,在VC6下使用正常,感觉功能挺强大的,于是决定认真用一用,我是完全完全的新手,请高手们直接忽略我,或者给我提些好的建议。我得到的是一个teechart8.ocx文件,这是ActiveX的文件,使用之前先注册一下,将该文件放入系统目录下,然后打开命令提示符,或者直接在运行窗口输入:regsvr32TeeChart8.ocx,然后会有一个注册成功的提示框,说明我们的ActiveX控件注册成功,在VC6下就可以使用了。如果不想使用了,可以使用regsvr32-uTeeChart8.ocx解除对teechart8

2、的注册。我的第一个任务是熟悉teechart控件。首先新建一个基于MFC的exe工程,选择对话框,其他默认。进入工程以后可以看到类视图中只有系统生成的默认的几个类,我先在类视图中在工程名上点右键新建两个文件夹,一个叫src,个叫tee,然后把默认生成的几个类(dig,app,about三个类)拖放到src文件夹中。做这一步实际上没有什么实质的意义,只是为了看起开比较方便,因为一会儿添加了teechart8以后会有很多的类添加进来,看起来非常困难,所以先提前把他们分开。闲话不多说,进入资源视图,点击主对话框后,删除todo那个静态文本。下一步我们要在这个对话框上放置一个teechart图表,但是

3、工具栏中没有,所以需要先添加一下。依次点击工程-增加到工程-componentsandcontrols,进入对话框后选择registeredActiveXcontrols,找至UTeeChartProActivexcontrolv8后点击insert,会弹出添加类的对话框,左边的列表里面是可以选择添加的类,现在我还不太了解具体类的作用,所以只好一并添加了,点击确定以后回到资源视图会发现工具栏下面多累一个圆形的小图标,这就是我们的teechart8控件了。这时注意到,类视图中已经为我们添加了一堆的类,我把他们都放到tee文件夹中,看起来舒服多了。下一步回到资源视图,将工具箱中的teechart控

4、件托入对话框,改变一下大小,稍作修改,界面设计就完成了。下一步要让teechart输出一个图形,那这次的任务就大功告成了。在对话框上右键点击图标控件,点击属性,选择teechartproediter选项卡,点击editchart,出现一个名为edit的对话框,该对话框非常重要,包括了teechart的各种属性。简要介绍一下这些属性,我的参考资料是TCA应用技术详解一书,该书是通过delphi描述的,我没有学过delphi,勉强看着。首先就是series选项,该属性包含的是需要绘制的图表的类型,如曲线,饼图,柱状图,等等等等,种类很多,这也是teechart的优势。其次是chart,这个选项包含

5、了图表的显示部分的很多属性,如坐标轴,背景,标题,等等。data选项中就是绘制图表需要的数据。export选项中包含了一些将图表导出为图片等格式的选项。print选项包含打印的设置。themes包含图表的主题,主要是显示方式。介绍完这写选项以后,试着新建了一个serie,我建立的是fastline,准备做一个实时曲线的显示,于是又更改了一下标题,改为实时曲线,并将chart选项中的legend的Visible前面的勾去掉。0K,编译,运行。发现什么都没有别说实时曲线了,就连曲线也没有一根。其实很容易理解,画曲线得有数据吧,数据都没有怎么给你画呢?所以,还得给该曲线填充一点数据。最简单的方法就是

6、,直接在data选项中添加一些数据,然后运行,发现我们可爱的图表显示出曲线了。好,熟悉teechart的基本任务完成。下一次我接着在这个基础上试着绘制实时曲线。接着上一篇文章,本次我的任务是绘制一个实时曲线图,可以实现坐标轴以及曲线随着数据的增加而移动。要完成该功能,首先应该为该图表指定一个对象用于操作。单击图表,选择建立类向导,点击membervariables选项卡,点击addvariable按钮,弹出添加变量对话框,输入m_chart后点击OK,个与该图表控件对应的控件变量就建立完成了。进入类视图,看到dlg类中多了一个m_chart变量。首先,我们利用该变量为该图表填充随机的初始数据。

7、在使用之前,需要包含一些头文件,于是,在XXXDIg.cpp的上面添加如下代码:#includetchart.h#includeaxis.h#includeaxes.h#includescroll.h#includeseries.h然后在OnInitDiaIog()方法中添加如下代码:/TODO:Addextrainitializationherem_chart.Series(0).FillSampleValues(50);这是点击运行以后,就可以看到图表控件上输出了50个点连成的曲线了。如下图所示下一步我们要做的是让曲线动起来。简单分析一下,要让曲线动起来,可以将左侧的点隐藏,右侧再增加一些

8、新的点。我们可以设置一个定时器,比如1S,每隔1s增加一个数,这样的话数据就可以不断增长了。即添加如下代码:/在OnInitDialog()中添力口SetTimer(1,1000,NULL);然后为dig类添加WM_TIMER的消息响应函数,并添加代码:voidCChartDlg:OnTimer(UINTnIDEvent)/TODO:Addyourmessagehandlercodehereand/orcalldefaultm_chart.Series(0).Add(900,lable,1);CDialog:OnTimer(nIDEvent);这里需要说明一下,add方法的三个参数,第一个为y

9、值,我添加的是900,第二个为x轴的标签,第三个我不懂,希望有知道的人告诉我一声,谢谢了。添加完毕后可以运行了,这时大家可以发现曲线在动,横坐标消失,变成了lable,而且左侧的曲线没有移出界面,而是曲线整个压缩,这不是我们想要的效果。所以我们还要再做更改。首先进入资源视图,点击对话框,右键单击编辑属性点击tools选项,单击add添加工具。teechart8有很多的工具给我们选择,这里我们点击axis选项卡,选中axisscroll工具后点击add后回到编辑窗,在axis下拉框中选择bottomaxis,然后关闭属性编辑即可。接下来,需要实现坐标轴的移动。很简单,只需要在OnTimer中添加

10、中间的那一句代码,voidCChartDlg:OnTimer(UINTnIDEvent)/TODO:Addyourmessagehandlercodehereand/orcalldefaultm_chart.Series(0).Add(900,lable,1);m_chart.GetAxis().GetBottom().Scroll(1.0,TRUE);CDialog:OnTimer(nIDEvent);完成后运行,基本就可以了。坐标轴和曲线后可以移动了。还有些需要更改的地方,比如横坐标改成时间显示,新增的点不是固定的900,而是随机数。这些都比较简单,读者自行琢磨吧本次的任务就基本完成了,下一次想实现从数据库中读取数据进行绘图。

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!