如何建立VB、ASP等应用程序的OCX图表

如何建立 VB应用程序的图表

在制作应用软件过程中,需要建立统计分析的模块,现有的 Windows 提供的控件,使用起来都不是特别的顺手。

后来使用了一个这样的控件,结合自己多年的软件开发经验,同时,也清楚广大编程人员的操作习惯。

这个控件的使用非常方便,而且可以说功能比较强大。下面我们就针对这个控件予以讲解。

下载地址是 : http://www.useway.com/usewaychart/UsewayChartV1.rar

一、简介

本控件是一个 ActiveX OCX 控件,你可以轻松的建立一个自己的图表。本控件和其他类似的控件相比有如下特点:

1、 可以建立 3 种图表的样式;

本控件可以建立 3 种图表即:

条形图、线形图、饼图。

如图:

2、 可以支持多数据同时显示在图表中,并且数据数量是灵活指定的;

3、 指定显示数据的方式非常简单,只需要采用逗号分隔的字符串赋值给 data 这个属性即可;

4、 每一种类型的图形赋值方式一样;

5、 支持非对称显示方式 ( 见下图 ) 。

二、使用方法

属性如下:

data :数据,以“ , ”分隔开的数字。

Rowtext :下面标示每行显示的文字,以“ , ”分隔开的文字。

Column :每列数据的数量

Header :列的标题,以“ , ”分隔开的文字。

BorderStyle :边框样式, 1 有边框, 0 没有边框

Caption :图表的标题文字

Drawtype :图表的类型, 1 线形, 2 条形, 3 饼图

Backcolor :背景颜色

注:

其他属性与 VB 中的标准控件的使用方法一致。

方法:

draw :在各个属性设置完毕后调用这个方法绘图。

** 编程思想要领: **

首先,把要显示的数据想象成一个表格:

因此,各个属性应该这样设置:

header=” 产值 ( 亿 ), 销售额 ( 亿 ), 毛利润 ( 亿 )”

rowtext=”1 月 ,2 月 ,3 月 ,4 月 ,5 月 ,6 月 ,7 月 ,8 月 ,9 月 ,10 月 ,11 月 ,12 月 ”

data=”22,24,26,28,32,35,32,32,31,28,29,30,11,12,16,18,22,25,22,22,21,18,19,20,6,5,8,9,10,7,5,8,9,11,12,13”

column=12

第二,我们确定这个控件的显示方式:

1、 确定有没有边框: borderstyle=0

2、 确定图表类型,线形图: Drawtype=1

3、 确定线条宽度: drawwidth=2

4 、确定显示标题:年度产值分析表

第三,调用绘图方法绘图。

在 VB 中插入了这个控件后代码输入如下:

Private Sub Command1_Click()

UsewayChart1.header = " 产值 ( 亿 ), 销售额 ( 亿 ), 毛利润 ( 亿 ) "

UsewayChart1.rowtext = "1 月 ,2 月 ,3 月 ,4 月 ,5 月 ,6 月 ,7 月 ,8 月 ,9 月 ,10 月 ,11 月 ,12 月 "

UsewayChart1.Data = "22,24,26,28,32,35,32,32,31,28,29,30,11,12,16,18,22,25,22,22,21,

18,19,20,6,5,8,9,10,7,5,8,9,11,12,13"

UsewayChart1.Column = 12

UsewayChart1.borderstyle = 0

UsewayChart1.drawtype = 1

UsewayChart1.DrawWidth = 2

UsewayChart1.Caption=" 年度产值分析表 "

UsewayChart1.draw

End Sub

显示效果如下:

修改一个属性,当我们将 drawtype 的属性设置为 2 的时候显示如图:

如果属性 drawtype 改为 3 显示饼图如下效果:

如果采用非对称显示的话代码如下:

Private Sub Command1_Click()

UsewayChart1.header = " 产值 ( 亿 ), 销售额 ( 亿 ), 毛利润 ( 亿 ) "

UsewayChart1.rowtext = "1 季度 ,2 季度 ,3 季度 ,4 季度 "

UsewayChart1.Data = "22,24,26,28,32,35,32,32,31,28,29,30,11,12,16,18,22,25,22,22,21,18,19,20,6,5,8,9,10,7,5,8,9,11,12,13"

UsewayChart1.Column = 12

UsewayChart1.BorderStyle = 0

UsewayChart1.drawtype = 1

UsewayChart1.DrawWidth = 2

UsewayChart1.Caption = " 年度产值分析表 "

UsewayChart1.draw

End Sub

效果:

三、我们再看一下其他的例子

其它例子 1 ,只显示一个饼图:

Private Sub Command1_Click()

UsewayChart1.drawtype = 3

UsewayChart1.DrawWidth = 2

UsewayChart1.Column = 8

UsewayChart1.Data = "35,13,34,34,11,52,73,14"

UsewayChart1.header = "h1"

UsewayChart1.rowtext = "d1,d2,d3,d4,d5,d6,d7,d8"

UsewayChart1.draw

End Sub

效果:

其它例子 2 ,只显示一组条形图:

Private Sub Command1_Click()

UsewayChart1.drawtype = 2

UsewayChart1.DrawWidth = 2

UsewayChart1.Column = 8

UsewayChart1.Data = "35,13,34,34,11,52,73,14"

UsewayChart1.header = "h1"

UsewayChart1.rowtext = "d1,d2,d3,d4,d5,d6,d7,d8"

UsewayChart1.draw

End Sub

效果:

呵呵,是不是很容易?

Published At
Categories with Web编程
Tagged with
comments powered by Disqus