Chinaunix首页 | 论坛 | 博客
  • 博客访问: 249040
  • 博文数量: 59
  • 博客积分: 2000
  • 博客等级: 大尉
  • 技术积分: 752
  • 用 户 组: 普通用户
  • 注册时间: 2006-08-01 20:49
文章分类
文章存档

2011年(24)

2010年(12)

2009年(18)

2008年(5)

我的朋友

分类: WINDOWS

2009-07-24 12:18:27

这些天用到TeeChart控件,从网上找了很久也没找到使用的教程,郁闷~~
幸好有同事用到过该控件的5.0版,有一些例子可参考,俺就在那个基础上搞出了程序。
首先,把TeeChart8.ocx放在某个目录下。
然后,在Visual Studio 2005里面新建基于TypeLib的MFC类,通过文件浏览找到控件所在的位置。这时就可以看到该控件引入的一大堆接口,除了ITChart,把其它所有的都加进来,然后确认。这样就新建了一大堆的COleDispathDriver的类,都在*.h文件里面。
然后,在Visual Studio 2005里面新建基于ActiveX控件的MFC类,通过文件浏览找到控件所在位置,这时可以看到该控件只有一个接口——ITChart,把它加进来,生成了CTChart的类,是基于CWnd的。
 
这样就可以通过CTChart::Create(NULL,NULL,...(后面记不清了)动态创建控件。这里要注意的是Create里面的字符串变量的使用,我之前一直用“”代替NULL,结果在程序运行时总报COLEException,说是DISP_E_MEMBERNOTFOUND,我找了很久很久才发现原来是这个原因。
 
创建该控件后就可以通过CTChart::AddSeries来添加曲线了,呵呵。不过先别得意,通过这种方式创建的所有的类都是相互独立的,以前的CTChart::Series函数返回值是CSeries的变量,可以直接进行AddXY的操作,现在只能手工地将Series函数返回的LPDISPATCH(不知道写对没)变量用(CSeries)CTChart::Series(n)转换为CSeries的对象,然后进行画图啊什么的操作。
 
还有一点要说明的就是从TeeChart6开始,Teechart自动生成的类里面的函数都发生了变化,本来是Set***的函数都变成了put_***。如SetColor变成了put_Color。
 
下面我把控件上传在这儿,仅供学习交流,欢迎大家跟我联系啊。
文件: TeeChart8[1].0.0.5.rar
大小: 2437KB
下载: 下载
阅读(13040) | 评论(5) | 转发(0) |
给主人留下些什么吧!~~

quanhailee2016-05-28 23:47:01

还有一点要说明的就是从TeeChart6开始,Teechart自动生成的类里面的函数都发生了变化,本来是Set***的函数都变成了put_***。如SetColor变成了put_Color。

这几句话说的不对,你没有仔细去研究一下为什么会发生这样的变化,妄下结论。

chinaunix网友2010-11-27 03:21:52

唉,我找了两年的方法,终于在你这里搞定了,无奈两年前要是看到这篇文章,老板也不至于用BCB6那垃圾的东西做teechart的项目。

chinaunix网友2010-11-27 03:21:52

唉,我找了两年的方法,终于在你这里搞定了,无奈两年前要是看到这篇文章,老板也不至于用BCB6那垃圾的东西做teechart的项目。

chinaunix网友2009-12-04 17:38:32

是不是注册版?

chinaunix网友2009-12-04 17:38:32

是不是注册版?