文档章节

Flex与FLASH交互

保安队长
 保安队长
发布于 2015/01/29 17:57
字数 569
阅读 54
收藏 0

    最近做一个决策分析项目,需要使用到FLEX,而在使用的过程中,逐渐的接触到了FLASH,突然发现,用FLASH来做动画或者图表,用FLEX与JAVA后台进行交互,是一个非常方便的事情。唯一的障碍莫过于,FLEX与FLASH之间的数据交互。

    其实这本身也不难,解决的方法就是通过Actionscript3.0.这需要注意的是,Flash cs5以上的版本才支持AS3.0,更以前的版本只支持AS2.0,我用的FlexBuilder是4.6,同样支持AS3.0。这样促使了As3.0可以完美的成为中间桥梁

    以下代码为FLEX端

<?xml version="1.0" encoding="utf-8"?>

<s:Application xmlns:fx="
http://ns.adobe.com/mxml/2009
" 

      xmlns:s="library://ns.adobe.com/flex/spark" 

      xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600"

      creationComplete="application1_creationCompleteHandler(event)">

 <fx:Script>

  <![CDATA[

   import mx.events.FlexEvent;

   private var flexArr:Array = new Array();

   protected function swfLoader_completeHandler(event:Event):void

   {
    // flash加载完成后,传入参数
    Object(swfLoader.content).InitApp(this,this.flexArr,"交互测试");
   }
   protected function application1_creationCompleteHandler(event:FlexEvent):void
   {
    this.flexArr.push(1111,2222,3333,4444);
    swfLoader.source="flash/RecComp.swf";  
   }
  ]]>
 </fx:Script>
 <s:SWFLoader source="" id="swfLoader" width="190" height="373" left="100" top="100" complete="swfLoader_completeHandler(event)" />
</s:Application>

    从上面代码可以看出,FLEX调用了一个RecComp.swf的Flash文件,在这个swf中,要写一个InitApp方法,传入一个对象(供FLASH调用FLEX,后续讲)一个数组用来存值和一个标题,如下

import flash.display.MovieClip;
import flash.display.Sprite;
import flash.text.TextField;
stop();
var flexApp:Object;
function InitApp(ap:Object,aarFlex:Array,titleMsg:String):void
{
 this.flexApp = ap;
 
 var array:Array = new Array();
 var rec1:Rec1 = new Rec1();
 var rec2:Rec2 = new Rec2();
 var rec3:Rec3 = new Rec3();
 var rec4:Rec4 = new Rec4();
 var rec5:Rec5 = new Rec5();
 var rec6:Rec6 = new Rec6();
 var rec7:Rec7 = new Rec7();
 var rec8:Rec8 = new Rec8();
 array.push(rec1,rec2,rec3,rec4,rec5,rec6,rec7,rec8);
 
 var format:TextFormat = new TextFormat("微软雅黑",22,"0x663300");
 format.bold="bold";
 format.align = "center";
 var tf:TextField=new TextField();
 
 tf.height=30;
 tf.width=100;
 tf.x=12.15;
 tf.y=47.3;
 tf.text=titleMsg;
 tf.setTextFormat(format);
 addChild(tf);
 
 for(var i:int=0;i<aarFlex.length;i++){
  array[i].x=15;
  array[i].y=300 - 35*i;
  var recInfo:RecInfo=new RecInfo();
  recInfo.x=155;
  recInfo.y=300 - 35*i - 3;
  recInfo.titleInfo.text=aarFlex[i]+"人";
  addChild(array[i]);
  addChild(recInfo);
 
  setChildIndex(array[i],i+1);
 }
}

    function InitApp(ap:Object,aarFlex:Array,titleMsg:String):void  这个方法为主要接收参数。至于里面别的代码,是我自己做的无件,与交互不相关。这个组件我会发至网盘,里面还包含了通过Flash来做动画,做元件等、供大家交流


http://pan.baidu.com/s/1c0AhNY4  源码地址

© 著作权归作者所有

保安队长
粉丝 1
博文 25
码字总数 8881
作品 0
大连
程序员
私信 提问
浅谈 Flash/Flex/HTML5 技术选型

在HTML5发布以前,RIA领域的技术解决方案一直相都是各展所长,并无争议。Adobe体系中,Flash做不了的事情,Flex可以做到;.Net系决策者在选用RIA解决方案时,Silverlight是不二之选。 曾经我...

墙头草
2012/08/14
16.5K
46
探究 Flex 组件的生命周期

司 美琴, 开发工程师, IBM 简介: 最为新一代 RIA 技术的典型框架,Adobe Flex 既有传统桌面程序的交互相应性强,健壮性以及容易编程调试的特点,又有着 Web 程序容易部署,更丰富多彩的 UI...

SeanCai
2012/03/08
200
1
15 非常有用的 Adobe Flex 教程

Adobe Flex是最初由Macromedia公司在2004年3月发布的,基于其专有的Macromedia Flash平台,它是涵盖了支持RIA(Rich Internet Applications)的开发和部署的一系列技术组合。Flex是开发富互联...

红薯
2011/09/30
11.9K
5
《Hello Flex 4》笔记——1 Getting started

不要被篇幅吓到,内容比较基础,代码易读,提醒下自己 - -||| 开始看之前先把Flash Builder装上了... Why Flex 4?(这是为什么呢) Flex 4 is a sexy framework that lets you write code tha...

豆仔
2012/10/30
196
0
Apache Flex 4.16.0 发布,RIA 平台

Apache Flex 4.16.0 发布了,Apache Flex SDK 4.16.0 是 Apache Flex SDK 4.15.0 的一个更新,增加了对最新 Flash Player 和 AIR 运行时的支持以及许多错误的修复。 参阅发布日志了解更多信息...

局长
2017/03/16
1K
11

没有更多内容

加载失败,请刷新页面

加载更多

OSChina 周六乱弹 —— 如果是个帅小伙你愿意和他出去吗

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 小小编辑推荐:《Ghost 》游戏《死亡搁浅》原声 《Ghost 》游戏(《死亡搁浅》原声) - Au/Ra / Alan Walker 手机党少年们想听歌,请使劲儿戳...

小小编辑
今天
159
6
java通过ServerSocket与Socket实现通信

首先说一下ServerSocket与Socket. 1.ServerSocket ServerSocket是用来监听客户端Socket连接的类,如果没有连接会一直处于等待状态. ServetSocket有三个构造方法: (1) ServerSocket(int port);...

Blueeeeeee
今天
6
0
用 Sphinx 搭建博客时,如何自定义插件?

之前有不少同学看过我的个人博客(http://python-online.cn),也根据我写的教程完成了自己个人站点的搭建。 点此:使用 Python 30分钟 教你快速搭建一个博客 为防有的同学不清楚 Sphinx ,这...

王炳明
昨天
5
0
黑客之道-40本书籍助你快速入门黑客技术免费下载

场景 黑客是一个中文词语,皆源自英文hacker,随着灰鸽子的出现,灰鸽子成为了很多假借黑客名义控制他人电脑的黑客技术,于是出现了“骇客”与"黑客"分家。2012年电影频道节目中心出品的电影...

badaoliumang
昨天
16
0
很遗憾,没有一篇文章能讲清楚线程的生命周期!

(手机横屏看源码更方便) 注:java源码分析部分如无特殊说明均基于 java8 版本。 简介 大家都知道线程是有生命周期,但是彤哥可以认真负责地告诉你网上几乎没有一篇文章讲得是完全正确的。 ...

彤哥读源码
昨天
19
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部