最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Flash as3教程:OutDisplay類

互聯(lián)網(wǎng)   發(fā)布時間:2008-10-06 01:25:55   作者:佚名   我要評論
前面我們學(xué)習(xí)了Flash AS3教程:疑難雜癥匯總, 我們繼續(xù)學(xué)習(xí)AS3的index.base.func.OutDisplay類 例子展示:點開觀看! http://www.webjx.com/files/media/OutDisplay.swf index.base.func.OutDisplay類講解: 當(dāng)對象再一次觸發(fā)某事件的時候,判斷是否在事件范圍內(nèi),如果不
前面我們學(xué)習(xí)了Flash AS3教程:疑難雜癥匯總, 我們繼續(xù)學(xué)習(xí)AS3的index.base.func.OutDisplay類 例子展示:點開觀看!
http://www.fzitv.net/files/media/OutDisplay.swf

index.base.func.OutDisplay類講解:
當(dāng)對象再一次觸發(fā)某事件的時候,判斷是否在事件范圍內(nèi),如果不在則調(diào)度Event.CANCEL事件

構(gòu)造函數(shù)
public function OutDisplay(_type:String,_dis:DisplayObject,...objs)
第一個參數(shù):偵聽類型
第二個參數(shù):作用范圍,一般來說都是用Stage作為范圍,當(dāng)然也有用在其他地方的
第三,四……個參數(shù):可以擁有_type事件的對象
實例化后,偵聽_dis的_type事件,每當(dāng)觸發(fā)_type事件,就開始判斷事件目標(biāo)是否存在objs中,或者objs中某項的子集顯示對象,如果有則沒有反應(yīng),如果沒有則發(fā)出Event.CANCEL事件

add方法
public function add(...objs):Array
增加可以擁有_type事件的對象

objects屬性(只讀)
public function get objects():Array
返回可以擁有_type事件的對象列表

clear方法
public function clear(isDispatch:Boolean = false):void
清除類里面的偵聽,以及引用
第一個參數(shù):如果為true,那么調(diào)用clear之后會發(fā)出Event.CANCEL,反之沒反應(yīng)!默認為false

例子:
下面是展示flash的源代碼,這只是一個簡單應(yīng)用,如果寫復(fù)雜一點,也可以寫出真正的快捷菜單

CODE:
import index.base.func.OutDisplay;

var menu:Menu = new Menu;
menu.mc1.addEventListener(MouseEvent.MOUSE_OVER,mouseOverFun);
menu.mc2.addEventListener(MouseEvent.MOUSE_OVER,mouseOverFun);
menu.mc3.addEventListener(MouseEvent.MOUSE_OVER,mouseOverFun);
menu.mc4.addEventListener(MouseEvent.MOUSE_OVER,mouseOverFun);
addChild(menu);

function mouseOverFun(e:MouseEvent){
var m:Menu = new Menu;
m.x = e.currentTarget.x e.currentTarget.parent.x;
m.y = e.currentTarget.y e.currentTarget.parent.y;
addChild(m);

var out:OutDisplay = new OutDisplay(MouseEvent.MOUSE_OVER,stage,e.currentTarget);
out.addEventListener(Event.CANCEL,cancelFun);
out.add(m);

m = null;
out = null;
}

function cancelFun(e:Event):void{
var out:OutDisplay = e.currentTarget as OutDisplay;
var tmpAr:Array = out.objects;
removeChild(tmpAr[1]);
out.removeEventListener(Event.CANCEL,cancelFun);

tmpAr = null;
out = null;
}
類的源代碼:

CODE:
package index.base.func{

import flash.display.DisplayObject;
import flash.display.DisplayObjectContainer;
import flash.events.Event;
import flash.events.EventDispatcher;

public class OutDisplay extends EventDispatcher{

//保存所有對象
private var objAr:Array;
//保存?zhèn)陕狀愋?br /> private var type:String;
//保存?zhèn)陕牱秶?br /> private var dis:DisplayObject;

//構(gòu)造函數(shù)
public function OutDisplay(_type:String,_dis:DisplayObject,...objs){
type = _type;
objAr = objs;
dis = _dis;
dis.addEventListener(_type,fun);
}

//事件處理
private function fun(e:Event):void{
for(var i:uint = 0;i<objAr.length;i ){
if(e.target == objAr[i]) return;
if(objAr[i] is DisplayObjectContainer){
if(objAr[i].contains(e.target)) return;
}
}
dis.removeEventListener(type,fun);
dispatchEvent(new Event(Event.CANCEL));
}

//添加對象
public function add(...objs):Array{
for(var i:int = 0; i < objs.length; i ){
objAr.push(objs[i]);
}
return objects;
}

//獲取對象列表
public function get objects():Array{
return objAr;
}

//卸載
public function clear(isDispatch:Boolean = false):void{
if(isDispatch) dispatchEvent(new Event(Event.CANCEL));
dis.removeEventListener(type,fun);
objAr = null;
}

}
}

相關(guān)文章

  • flash cs6鼠標(biāo)跟隨效果實現(xiàn)代碼分享

    flash cs6想要實現(xiàn)鼠標(biāo)跟隨效果?該怎么制作呢?今天我們就來看看使用as2.0實現(xiàn)鼠標(biāo)跟隨效果的教程,需要的朋友可以參考下
    2019-05-19
  • Flash cs6怎么使用代碼輸入中英文文本?

    Flash cs6怎么使用代碼輸入中英文文本?Flash cs6中可以使用文字工具直接輸入文本,也可以使用代碼來輸入文本,該怎么使用代碼輸入文本呢?請看下文詳細的教程,需要的朋友
    2018-03-11
  • flash as3.0怎么定義抽象類和抽象?

    flash as3.0抽象類怎么定義? as3.0中有很多抽象類,該怎么定義抽象類和抽象方法呢?下面我們就來看看簡單的例子,需要的朋友可以參考下http://www.fzitv.net/softs/408402.
    2018-02-28
  • flash cs6中怎么使用ActionScript3.0?

    flash cs6中怎么使用ActionScript3.0?flash cs6中想要使用ActionScript3.0功能,該怎么使用呢?下面我們就來看看詳細的教程,需要的朋友可以參考下
    2018-01-25
  • Flash中怎么實現(xiàn)鼠標(biāo)點擊決定圖像位置?

    本教程給大家分享一個Flash小教程,教大家在Flash CS6中怎么實現(xiàn)鼠標(biāo)點擊決定圖像位置?方法很簡單,感興趣的朋友歡迎前來一起分享學(xué)習(xí)
    2018-01-12
  • Flash中如何用代碼將圖片放在自己想要的舞臺位置?

    本教程教腳本之家的ActionScript教程學(xué)習(xí)者在Flash中如何用代碼將圖片放在自己想要的舞臺位置,教程講解的詳細,感興趣的朋友歡迎前來分享學(xué)習(xí)
    2017-11-20
  • 在Flash CS6中使用with函數(shù)繪制背景圖教程

    本教程教腳本之家的ActionScript教程學(xué)習(xí)者如何在Flash CS6中使用with函數(shù)繪制背景圖?教程一步步講解的挺詳細,方法也不難,非常適合Flash新手入門學(xué)習(xí)
    2017-11-18
  • Flash怎么設(shè)置元件坐標(biāo)?flash使用代碼設(shè)置元件的坐標(biāo)的教程

    Flash怎么設(shè)置元件坐標(biāo)?flash中導(dǎo)如的元件需要添加坐標(biāo),該怎么定位元件坐標(biāo)呢?下面我們就來看看flash使用代碼設(shè)置元件的坐標(biāo)的教程,需要的朋友可以參考下
    2017-10-11
  • Flash怎么制作來回搖擺的花朵的動畫?

    Flash怎么制作來回搖擺的花朵的動畫?Flash中想要給花朵制作一段搖擺的動畫效果,該怎么制作呢?下面我們就來看看詳細的教程,很簡單,需要的朋友可以參考下
    2017-05-23
  • Flash怎么制作流動七彩色的文字?

    Flash怎么制作流動七彩色的文字?想要讓文字動起來,該怎么使用flash給文字制作一個流動七彩色的動畫呢?下面我們就來看看詳細的教程,需要的朋友可以參考下
    2017-04-23

最新評論

黄冈市| 河北区| 孙吴县| 定安县| 酉阳| 博客| 乌拉特前旗| 思茅市| 虎林市| 十堰市| 云南省| 会东县| 靖远县| 武冈市| 泊头市| 诸暨市| 荥经县| 通化县| 卢氏县| 米脂县| 漳州市| 勐海县| 宁津县| 乐陵市| 桦南县| 郑州市| 栾川县| 萨嘎县| 定南县| 舞阳县| 博罗县| 宁阳县| 苍溪县| 南昌市| 沙湾县| 灵丘县| 兖州市| 翁源县| 昌邑市| 德阳市| 宿松县|