VS使用TeeChart绘图控件
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
VS2010 使用TeeChart绘图控件- 之一- 控件和类的导入vs2010的用法和vc6有很大的不同,特别是在一些函数调用那里,当然。控件导入也是很不一样的
安装好控件后就可以在工程里加入teechart控件了
加入方法有如下几种:
1.添加Teechart控件
1.1 插入Teechart控件
1.1.1 插入控件
新建一个对话框工程,在对话框上点击鼠标右键,弹出的菜单里选择“插入ActiveX控件”
然后弹出的对话框里选择TeeChart控件
这时对话框就有TeeChart控件了
1.1.2 vs2010另外一种插入控件的方法
vs2010对话框设置的工具栏上就有许多控件了,若想把我们常用的控件也加到工具栏上以后使用就很方便了,下面说的这种方法就是把控件加入工具栏里。方便以后的调用
在工具栏的空白处点击右键,选择添加选项卡
这时vs就会新建一个选项卡,自己可以定义一个名称,这里命名为绘图控件
为选项卡添加项:在新建的选项卡的空白处点击右键,选择“选择项”
由于控件比较多,会耗费一定的时间打开这个选择项,别以为死机了,耐心等个几十秒吧
在打开的对话框中选择选择com标签,选择teechart控件
这样teechart控件就会在你的工具栏新加的选项里了,以后都会存在(我添加TeeChat的同时还把其他的一些控件添加进去了)
1.1.3 控件属性设置
双击控件进行相关设置
这里添加一个快速线图-Fast Line
若数据量特别大,可以在Series标签里的Format的Draw all选项去掉
在Chart标签里还可以设置坐标轴的名称属性等,这里先不详细讲述属性的设置2.为控件添加类
vs2010与vc6不一样,vs2010的控件对应的类添加相对比vc6麻烦
这里就对刚刚加入的TeeChart控件加入相关的类
2.1 添加TypeLib的mfc类
(1)选择vs菜单“项目”-“添加类”(注意这时类视图树形控件选中最顶端的父节点)
(2)添加TypeLib的mfc类
(3)在可用的类型库里选择teechart5
(4)在接口里就有TeeChart对应的所有类了,这里TChart是必须的接口,其他的可以根据需要添加
(5)点击完成就把CTChart这个类添加进工程里了
其实第(2)步可以选择ActiveX控件的Mfc类,操作方法雷同,不过这时是只列出对应的接口
3.把TeeChart控件和对象关联
3.1 为控件关联对象
在控件上点击右键,选择添加变量,即可为控件关联对象
3.2 去掉vs默认的初始化
不知为何vs会默认给添加的变量初始化0,这个初始化一定要去掉否则无法使用
public: CTchart1 m_Chart;
CTeeChartDlg::CTeeChartDlg(CWnd* pParent/*=NULL*/)
: CDialogEx(CTeeChartDlg::IDD, pParent)
{
m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
}
void CTeeChartDlg::DoDataExchange(CDataExchange* pDX)
{
CDialogEx::DoDataExchange(pDX);
DDX_Control(pDX, IDC_TCHART1, m_Chart);
}
这时TeeChart就可正常使用了
VS2010 使用TeeChart绘图控件- 之二- 绘制图形(折线图,柱状图)
1.前期准备
具体可见VS2010 使用TeeChart绘图控件- 之一控件和类的导入
1. 1 添加TeeChart控件,给控件添加变量
m_TeeChart
添加TeeChart控件,右击控件,选择添加变量,vs会自动给我们引入CTchart1这个类,但是只有这个类,我们是远远不够的,需要添加teechart其他相关的类,添加方法在之前已经讲过,不再重复。
1.2. 引入必要的头文件
其实之前的方法比较麻烦,更简单就是通过类向导,导入类型库的类如图进入类向导,选择添加类按钮的下拉菜单,选择类型库中的MFC 类
选择teechart5即可
暂时引入
#include "CSeries.h"
#include "CAxis.h"
#include "CAxes.h"
#include "CLegend.h"
需要还可以继续在之后引入
--------------------------------------------------------------------------------------------------------------------------------
2. teechart 画图- 折线图
TeeChart 画图步骤一般是先获得图线序列CSeries,再给Series添加点;添加点可以用函数AddXY,或者AddArray。AddArray要比AddXY 的效率高出很多,其比较可见TeeChart绘图控件- 之三- 提高绘图的效率
2.1 清除图形
在画线之前把图形清除一下,否则会覆盖,清除可用CSeries的函数Clear();
但是当添加多个Series后要对所有Series都clear,这是很蛋疼的,因为你有时都不知道有多少个Series,这样可以先获得Series的总数在clear
代码如下
for(long i =0;i { ((CSeries)m_TeeChart.Series(i)).Clear(); } 通过CTchart 的get_SeriesCount函数获得所有图像序列,再全部清除,这个函数经常用到,可用定义为类成员函数,这里是个对话框CTChartDlg