成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Flex與Flex swf如何實現通訊

開發 后端
本文向大家簡單介紹一下Flex swf的用法,這里講述的是在FlexApplication中嵌套一個Flex swf,然后實現Flex與Flex swf相互間的通訊。

本文和大家重點討論一下Flex通訊系列---Flex與Flex swf,要實現Flex與Flex swf相互間的通訊,我們需要引入SystemManager接口實現。

Flex通訊系列---Flex與Flex swf

這里講述的是在FlexApplication中嵌套一個Flex swf,然后實現Flex與Flex swf相互間的通訊。我們需要引入SystemManager接口實現。

下面我們來看一下《Flex3參考手冊》對SystemManager的描述,你大約就知道怎么回事,使用里面現成的屬性和方法就可以實現Flex與Flex swf的通訊啦。

每個應用程序都包含一個SystemManager。如果應用程序窗口的大小發生更改(您無法在應用程序中更改其大小,只能通過與操作系統窗口或瀏覽器交互來進行更改),則SystemManager會發送一個事件。它是應用程序中所有可顯示項目(例如mx.core.Application主實例以及所有彈出窗口、工具提示、光標等)的父項。任何以SystemManager作為父項的對象都將被視為“***”窗口,就連工具提示和光標也是如此。

是的,要實現Flex調用嵌套Flex swf,主要我們在Flex swf中為Flex打開方便之門就可以了,也就是設計一個publicfunction,難道這還不夠簡易?下面說一下簡單的實現:

1、在FlexApplication(如命名為Main.mxml)中通過Flex swfLoader標簽加載Flex swf文件:

 

  1. viewplaincopytoclipboardprint?  
  2. <mx:Flex swfLoaderid="Flex swfLoader"source="Game01.Flex swf"/> 
  3. <mx:Flex swfLoaderid="Flex swfLoader"source="Game01.Flex swf"/> 
  4.  

 2、在Game01.mxml中設計一個publicfunction。如:

  1. viewplaincopytoclipboardprint?  
  2. publicfunctioninvokeByOutsideFlex():void{  
  3. trace("Success...");  
  4. }  
  5. publicfunctioninvokeByOutsideFlex():void{  
  6. trace("Success...");  
  7. }  
  8.  

 3、在Main.mxml中調用:

viewplaincopytoclipboardprint?
Object(Object(Flex swfLoader.content).application).invokeByOutsideFlex();
//其實第二個Object具體是SystemManager對象,所以也可以寫作
Object(SystemManager(Flex swfLoader.content).application).invokeByOutsideFlex();
Object(Object(Flex swfLoader.content).application).invokeByOutsideFlex();
//其實第二個Object具體是SystemManager對象,所以也可以寫作
Object(SystemManager(Flex swfLoader.content).application).invokeByOutsideFlex();
我們先來了解兩個內容,一個事Flex swfLoader的content屬性,另一個是Application.application。

◆Flex swfLoader-content

content屬性

content:DisplayObject[]
此屬性包含表示在Flex swfLoader控件中加載的內容的對象。

Application-application

很明顯,通過這樣簡單的兩句話就可以獲取到FlexApplication層次下的public方法。

好了,至此已經可以實現了Flex向Flex swf通訊了。那么Flex swf怎么可以反過來跟FLEX說話呢?原理是一樣的,Flex開放一些function,然后Flex swf就可以直接調用那些function了。

4、如在Main.mxml中加入:

  1. viewplaincopytoclipboardprint?  
  2. publicfunctioninvokeByInsideFlex swf():void{  
  3. trace("Igetit...");  
  4. }  
  5. publicfunctioninvokeByInsideFlex swf():void{  
  6. trace("Igetit...");  
  7. }  
  8.  

 5、回去Game01.mxml可以直接通過如下代碼調用:

  1. viewplaincopytoclipboardprint?  
  2. Object(SystemManager(this.parent.parent.root).application).invokeByInsideFlex swf();  
  3. //SystemManager可以改成Object,多態特性  
  4. Object(SystemManager(this.parent.parent.root).application).invokeByInsideFlex swf();  
  5. //SystemManager可以改成Object,多態特性  
  6.  

 接下來我們需要看一下兩個屬性:

◆UIComponent:

這個層次我是通過Debug對象層層查找出來的,層次不同當然需要改一下了,甚至可以直接跳到幾層,直接到最外層,這個自己再去查查,呵呵。

源代碼下載:準備上傳

parent屬性

parent:DisplayObjectContainer[]
此組件的父容器或組件。只有UIComponent對象應該具有父屬性。非UIComponent對象應該使用其它屬性引用其所屬對象。一般而言,非UIComponent對象使用owner屬性引用其所屬對象。

◆DisplayObject:

root屬性

root:DisplayObject[]
對于加載的Flex swf文件中的顯示對象,root屬性是此Flex swf文件所表示的顯示列表樹結構部分中的***顯示對象。對于代表已加載圖像文件的位圖對象,root屬性就是位圖對象本身。對于***個加載的Flex swf文件的主類的實例,root屬性就是顯示對象本身。Stage對象的root屬性是Stage對象本身。對于任何未添加到顯示列表的顯示對象,root屬性設置為null,除非它已添加到符合以下條件的顯示對象容器:不在顯示列表中,但屬于已加載Flex swf文件中***顯示對象的子級。

application屬性

application:Object[]
對***應用程序的引用。
通常,Application對象可能存在層次結構,因為Application可以使用Flex swfLoader控件動態加載其它Application。可通過UIComponent的parentApplication屬性訪問UIComponent所在的子Application,并可以在層次結構中向上瀏覽到***Application。
 

【編輯推薦】

  1. Flex里如何加載Flex swf文件
  2. Flex必須了解的那些事
  3. 在Flex中使用樣式的五大方法
  4. FlexBuilder3.0與Eclipse3.4的***結合
  5. Flex ComboBox和Datagrid組件用法指導

 

 

責任編輯:佚名 來源: csdn.net
相關推薦

2010-07-27 13:46:18

Flex swf

2010-08-12 13:34:13

Flex驗證組件

2010-07-30 12:56:02

Flex調用JavaS

2010-08-10 09:40:23

Flex與瀏覽器交互

2010-08-09 15:30:00

Flex字體

2009-07-03 08:58:22

Flex教程Flex程序

2010-08-05 13:27:06

Flex布局

2010-07-27 10:54:22

Flex

2010-08-09 10:39:14

FlexACtionSCrip

2010-08-10 17:01:48

FlexJavaScript

2010-08-12 12:55:02

FlexFlash

2010-07-29 15:09:19

Flex全屏

2010-08-05 15:06:19

Flex數據綁定

2010-08-09 13:37:09

FlexDjango

2010-07-28 15:29:18

Flex函數

2010-08-03 14:24:37

Flex與java集成

2010-08-10 10:44:22

Flex開發

2012-11-27 16:01:41

IBM Flex Sy

2010-07-29 14:27:52

FlexWeb

2010-08-06 09:24:44

FlexFlash
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 久久精品亚洲 | 欧美 日韩 在线播放 | 干狠狠| 视频一区二区在线观看 | 午夜免费视频 | 日韩一级免费电影 | 中文字幕一区二区不卡 | 日韩人体在线 | 久久人操 | 欧美日韩一区二区视频在线观看 | 免费看91 | 国产偷久久一级精品60部 | a视频在线 | 亚洲欧美中文日韩在线v日本 | 99热精品在线 | 欧美成人激情 | 久久精品综合 | 国产亚洲一级 | 欧美性极品xxxx做受 | 成人视屏在线观看 | 伊人狼人影院 | 正在播放国产精品 | www中文字幕 | 91久久精品国产 | 成人免费视频网 | 午夜影院普通用户体验区 | 日日碰碰 | 日韩国产精品一区二区三区 | 在线观看黄色电影 | 99久久精品国产一区二区三区 | 国产中文字幕网 | 国产精品中文 | 欧美又大粗又爽又黄大片视频 | 精品一区二区三区在线观看国产 | 中文在线www | 狠狠躁躁夜夜躁波多野结依 | 精品国产欧美 | 亚洲精品在线免费观看视频 | 免费在线视频a | 国产一区二区麻豆 | 日韩三 |