zoukankan      html  css  js  c++  java
  • 教你用Flash制作曲线报表图

    一、先看图:



    这是一个用Flash做的动态曲线图,请将鼠标移动那些绿色的小点上看看。
    这个示例可以结合asp、asp.net、php、jsp等后台语言,显示你想要的数据曲线。其实是与后台语言无关的,只要按一定的格式传递数据给它就可以。另外,这仅仅是个示例程序,您在使用时,有可能得按照自己的需求重新修改,但本例基本上已涉及了Flash绘制曲线图的各个技术方面。

    二、在制作此例前,我假设您已了解以下Flash知识点:
    1.使用this.createEmptyMovieClip动态创建MovieClip;
    2.使用AS绘制线条或矩形;
    3.对Flash中“深度”的理解;
    4.使用this.createTextField动态创建文本框;

    三、正式开始
    1)创建一个空白文档,有三个层:



    看上图,三个层:
    script:放置一些脚本;
    鼠标跟随:当鼠标放置在曲线的点上时,会有一个提示,这个提示其实是一个MovieClip,这个层就放它;
    坐标曲线: 放置一个MovieClip,即生成的曲线;

    2).按Ctrl+F8新建一个影片剪辑(MovieClip),里面放置一个动态文本框,实例名称为:tips,如下图:



    3).返回场景,将刚才制作的mc坐库中托至场景(放在可视区域外),并且命名为:mouse_mc,如图:



    4).按Ctrl+F8新建一个影片剪辑(MovieClip):坐标曲线,有三个层:,如下图:



    script:放置一些脚本;
    文字:放置x,y轴的说明文字;
    xy轴: 放置x,y坐标轴;

    5).在影片剪辑“坐标曲线”的“xy轴”层上画x,y坐标线:



    这步就是注意坐标轴的中心点,画在影片剪辑的注册点上,即_x=0,_y=0处;

    6).在坐标轴附近,创建二个动态文本框,分别指定变量名为:txt_x,txt_y,如下图:



    这二个文本框用来显示坐标轴的说明文字;

    6).接着在的“script”层的第一帧,加入如下代码:

    影片剪辑"坐标曲线"的"script"层的代码

    7)返回场景,在场景的第一帧加入如下代码:

    场景的script代码

    8).将库中的“坐标曲线”影片剪辑托至场景中,命名为:mc,如下图:



    9).参数说明:

    在代码中,使用到了以下变量:

    //x轴刻度总长
        _root.xtotal = 60;
        
    //y轴刻度总长
        _root.ytotal = 100;
        
    //x轴说明文本
        _root.xtxt = "月份";
        
    //y轴说明文本
        _root.ytxt = "成绩";
        
    //依次的坐标点
        _root.piont = "1,80|2,70|3,90|4,88|5,100|6,90|7,90|8,35|9,99|30,60|50,80";

    “1,80”代表x坐标为1,y坐标为80的一个点,多个点依次以“|”分隔,选传到Flash后,使用AS的String.split("|")再拆分出来。

    另外,这些变量从那儿来呢?就是从外部动态传入的参数了。传入方法很简单,在嵌入Flash的Html页中,注意下面代码:

    嵌入swf的Html代码

    注意加粗的那部分,跟在swf文件名后边,以?开头,后边参数类似我们“WebForm1.aspx?QueryString1=1&QueryString2=aaaa”的形式,各值/对参数以“&”符分隔,这样在Flash中可以直接使用此变量,如果含有汉字,请以urlEncode编码,Flash会自动解析出来,否则汉字可能乱码。

    还有特别注意第7)步中,说到场景中的代码,有如下二句:

    //网页传入的值为String类型的,如_root.xtotal = "60",在此转换为Number类型,否则会有点问题.
    //
    x轴刻度总长
    _root.xtotal = parseInt(_root.xtotal);
    //y轴刻度总长
    _root.ytotal = parseInt(_root.ytotal);

    因为外部传入的值默认将是String类型,所以这里做了类型转换,以免后边运算时出错。

    四、完整源码下载

    点此下载(11K)>>

    说明:具体代码,里面基本上都加了注释,我在文章里没有再作太多说明,有不明白地方的请回复。

  • 相关阅读:
    Dot Net WinForm 控件开发 (七) 为属性提下拉式属性编辑器
    WinForm 程序的界面多语言切换
    c#遍历HashTable
    Dot Net WinForm 控件开发 (三) 自定义类型的属性需要自定义类型转换器
    Dot Net WinForm 控件开发 (六) 为属性提供弹出式编辑对话框
    Dot Net WinForm 控件开发 (一) 写一个最简单的控件
    Dot Net WinForm 控件开发 (四) 设置属性的默认值
    Dot Net WinForm 控件开发 (二) 给控件来点描述信息
    Dot Net WinForm 控件开发 (八) 调试控件的设计时行为
    Dot Net WinForm 控件开发 (五) 复杂属性的子属性
  • 原文地址:https://www.cnblogs.com/yao/p/743536.html
Copyright © 2011-2022 走看看