您现在的位置: 中国男护士网 >> 考试频道 >> 计算机等级 >> 二级辅导 >> VFP >> 辅导 >> 正文    
  用VFP3.0绘制统计图形 【注册男护士专用博客】          

用VFP3.0绘制统计图形

www.nanhushi.com     佚名   不详 

  Visual Foxpro 3.0(以下简称VFP)提供了一个调用MS-Graph统计图形的向导程序 ,其程序名为WZGRAPH.APP。遗憾的是,利用该向导程序只能以交互的方法绘制统计图,无 法以编程的方式根据不同的需要灵活地控制统计图。而VB 4.0提供了一个绘制统计图形的 Graph控件,该控件是以OLE DLL方式提供的,具有很强的绘图功能,包括直方图、饼图等11 种图形。VFP的OLE容器控制可以调用该Graph控件,达到绘制统计图形的目的。

Graph控件属性

Graph控件提供的属性非常丰富,共有五十多种,详细说明可以参考VB4.0的用户控件手册,下面将介绍几个常用的属性。

·AutoInc:向统计图数组属性赋值时,是否自动增加计数属性(ThisPoint、ThisSet属性)的值。AutoInc=1自动,AutoInc=0由人工增加。

·DrawMode:定义图形如何绘制。其赋值如下:

DrawMode=0图不出现

DrawMode=1 图形显示为空,但按BackGroup属性的颜色显示背景和显示

GraphCapt ion属性设置的标题

DrawMode=2重新显示图形

DrawMode=3以位图方式显示图形

DrawMode=4将图形拷贝到剪贴板

DrawMode=5打印图形的拷贝

DrawMode=6将图形保存到文件

·GraphCaption:指定图的标题。

·GraphTitle:指定数据集的数目。

·ThisPoint:指定或返回当前点的位置。

·ThisData:设定作图的数据,该属性是数组属性,数据在图上的位置由

ThisPoint和ThisSet属性确定。

·LabelText:每个数据点的标号,该属性也是数组属性,数据点在图上的位

置由ThisPoint和ThisSet属性确定。

·GraphType:指定图形的类型。其赋值如下:

GraphType=0 没有图形

GraphType=1 二维饼图

GraphType=2 三维饼图

GraphType=3(缺省)二维直方图

GraphType=4三维直方图

GraphType=5甘道图

GraphType=6线图

GraphType=7日志/线图

GraphType=8区域图

GraphType=9散点图

GraphType=10极状图

GraphType=11高低图

  实现方法

  首先,将VB4.0中的Graph32.OCX文件拷贝到Windows系统的system目录下,随后应对该控件进行注册。运行VFP系统,在主菜单中选择"工具"项,然后选择"选项",在弹 出的页框控制窗口中选择"控制"项,选中OLE控制项。此时在列表框中会列出所有的已注 册的OLE控制,选择"添加"按钮,系统会弹出一个输入文件名的窗口,将system目录下的 Graph32.OCX文件选入,则在OLE控

  制列表框中会出现Pinnacle-BPS Graph Control项。

  现在完全可以像使用Outline控制那样使用Graph控制,在VFP下既可以使用表单设计器,也可以使用类设计器来编制统计图形程序;在程序中完全可以对图形的每个细节进行 控制。

  下面的例子是对Graph控制的简单应用,首先定义了一个表单类,在该表单中加入一个 Graph OLE控制,其OleClass="GraphLib.Graph"。为了简单起见,统计图形数据采用直接 将数据赋值到GraphData和LabelText属性,当然也可以将数据库中的数据赋到该属性中进行 绘图。

  本程序的运行环境为:中文Windows 95,中文VFP 3.0。

……

frmMyForm=CREATEOBJECT(‘frmGraph') &&创建表单

frmMyForm.Caption=‘统计图形窗口'

frmMyForm.oleGraphObject.GraphTitle=‘统计图形'

*可根据实际情况,用数据库中的数据

*或内存变量中的数据进行绘图

With frmMyForm.oleGraphObject

·NumSets=2 &&共两组数据

·NumPoints=4 &&每组数据点4个

·AutoInc=1 &&自动增加计数

*设置统计数据

·ThisPoint=1

·ThisSet=1

·GraphData=10

·GraphData=20

·GraphData=30

·GraphData=40

·GraphData=20

·GraphData=30

·GraphData=40

·GraphData=50

*设置标号

·ThisPoint=1

·ThisSet=1

·DataReset=4

·LabelText=' 1月'

·LabelText=' 2月'

·LabelText=' 3月'

·LabelText=' 4月'

·GraphType=4 && 三维直方图

·GridStyle=3 && 设置网格

Endwith

frmMyForm.Show && 显示表单

READ EVENTS && 启动事件处理

*定义表单类

Define Class frmGraph As Form

AutoCenter=.T.

Closable=.F. && 废止控制菜单框

BackColor=RGB(192,192,192)

Height=350

Width=500

ControlBox=.F.

*创建退出命令按钮

ADD OBJECT cmdMyCmdBtn1 AS CommandButton;

With Caption='退出[<X]',;

Cancel=.T.,:

Left=200,;

Top=310,;

Height=25,;

Visible=.T.,:

PROCEDURE cmdMyCmdBtn1.Click

CLEAR EVEBTS &&结束事件处理,关闭表单

ENDPROC

*创建统计图形对象

ADD OBJECT oleGraphObject as OLEControl;

WITH OleClass="GraphLib.Graph",;

Visible=.T.,;

Height=300,;

Width=500

oleGraphObject.PrintStyle=2 &&彩色方式打印。

ENDDEFINE

 

文章录入:杜斌    责任编辑:杜斌 
  • 上一篇文章:

  • 下一篇文章:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
     

    联 系 信 息
    QQ:88236621
    电话:15853773350
    E-Mail:malenurse@163.com
    免费发布招聘信息
    做中国最专业男护士门户网站
    最 新 热 门
    最 新 推 荐
    相 关 文 章
    没有相关文章
    专 题 栏 目

      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)                            【进男护士社区逛逛】
    姓 名:
    * 游客填写  ·注册用户 ·忘记密码
    主 页:

    评 分:
    1分 2分 3分 4分 5分
    评论内容:
  • 请遵守《互联网电子公告服务管理规定》及中华人民共和国其他各项有关法律法规。
  • 严禁发表危害国家安全、损害国家利益、破坏民族团结、破坏国家宗教政策、破坏社会稳定、侮辱、诽谤、教唆、淫秽等内容的评论 。
  • 用户需对自己在使用本站服务过程中的行为承担法律责任(直接或间接导致的)。
  • 本站管理员有权保留或删除评论内容。
  • 评论内容只代表网友个人观点,与本网站立场无关。