Flash AS3.0 制作老鷹飛動(dòng)實(shí)例
學(xué)習(xí)AS3.0菜鳥起飛之—載入庫中的影片剪輯
在Flash創(chuàng)作環(huán)境中,可以從庫中拖拽影片剪輯到舞臺(tái)上,使它們出現(xiàn)在SWF文件中。當(dāng)使用ActionScript來添加影片剪輯時(shí),實(shí)際上也是將影片添加一個(gè)實(shí)例到時(shí)間軸上。幀是時(shí)間軸的一部分,你可以使用動(dòng)作面板將as代碼與幀關(guān)聯(lián)。因此時(shí)間軸成了用as代碼添加的顯示對(duì)象的父容器,除非另一個(gè)顯示對(duì)象被指定。
添加一個(gè)影片剪輯到當(dāng)前時(shí)間軸:
下面的例子從.fla庫中導(dǎo)入一個(gè)名為“鷹”的影片剪輯
1、新建Flash文檔(AS3),存盤。
2、打開“鷹”的影片剪輯,復(fù)制到庫中,(在這里不講解影片剪輯制作的過程)。
3、右鍵點(diǎn)擊“鷹”影片剪輯,在下拉菜單中點(diǎn)擊【屬性】打開屬性面板,勾選【為AstionScript導(dǎo)出】在類:文本框中輸入:hawk,按【確定】如圖:

4、返回場(chǎng)景1,選中圖層1的第幀,按F9鍵,打開動(dòng)作面板輸入代碼:
var myhaw:hawk = new hawk();
addChild(myhaw);
第一行用var聲明一個(gè)實(shí)例名:myhaw給影片剪輯。
第二行用addChild()命令將實(shí)例myhaw加入顯示列表。
提示:當(dāng)沒有明確指定顯示容器時(shí),影片剪輯實(shí)例是被添加到時(shí)間軸的當(dāng)前幀。
我們按Ctrl+Enter組合鍵,測(cè)試一下,影片已經(jīng)顯示在屏幕上了。參見未命名1.fla文檔
5、我們已經(jīng)把影片剪輯添加到時(shí)間軸上了,下面我們繼續(xù)添加代碼,做一個(gè)鷹跟隨鼠標(biāo)移動(dòng)。打開動(dòng)
作面板,加入下面代碼:
var myhaw:hawk = new hawk();
//注冊(cè)鼠標(biāo)單擊事件偵聽器
stage.addEventListener(MouseEvent.CLICK, addhawk);
//定義偵聽器函數(shù)
function addhawk(e:MouseEvent):void {
addChild(myhaw);
}
//注冊(cè)鼠標(biāo)移動(dòng)事件偵聽器
stage.addEventListener(MouseEvent.MOUSE_MOVE, movehaw);
//定義移動(dòng)事件偵聽器函數(shù)
function movehaw(e:MouseEvent):void {
//使myhaw位于鼠標(biāo)位置
myhaw.x = stage.mouseX;
myhaw.y = stage.mouseY;
}
上面的示例使用了事件的處理和函數(shù)的聲明。參見未命名2.fla文檔
下面是一個(gè)影片剪輯拖放的示例:
具體創(chuàng)建過程不再重復(fù),參照上面示例
不再廢話,直接上代碼:
//聲明實(shí)例
var myhaw:hawk = new hawk();
//添加到顯示列表
addChild(myhaw);
//myhaw位置(x,y坐標(biāo))
myhaw.x = 100;
myhaw.y = 100;
//注冊(cè)鼠標(biāo)按下事件偵聽器
myhaw.addEventListener(MouseEvent.MOUSE_DOWN, draghaw);
//注冊(cè)鼠標(biāo)釋放事件偵聽器
myhaw.addEventListener(MouseEvent.MOUSE_UP, drophaw);
//定義鼠標(biāo)按下事件偵聽器函數(shù)
function draghaw(dragevent:MouseEvent):void {
//開始拖動(dòng)
dragevent.currentTarget.startDrag();
}
//定義鼠標(biāo)釋放事件偵聽器函數(shù)
function drophaw(dropevent:MouseEvent):void {
//停止拖動(dòng)
dropevent.currentTarget.stopDrag();
}
按下鼠標(biāo)拖拽物體,當(dāng)釋放鼠標(biāo)時(shí),物體會(huì)停止跟隨指針。參見未命名3.fla文檔
添加一個(gè)影片剪輯到一個(gè)容器
DisplayObjectContainer對(duì)象(和繼承DisplayObjectContainer類所創(chuàng)建的對(duì)象)可以包含零個(gè)或多個(gè)顯示項(xiàng)。
就像移動(dòng)容器一樣,所有容器對(duì)象中的顯示項(xiàng)相對(duì)容器移動(dòng)。
示例:
1、新建Flash文檔(AS3),打開未命名1.fla文件。
2、使用庫的下拉菜單來選擇“未命名1.fla”的庫。如圖:

3、將“鷹”影片剪輯從庫中拖放到舞臺(tái)上。
4、通過庫的下拉菜單選擇回到新文件的庫。如圖:

注意:“鷹”的影片剪輯及相關(guān)素材已經(jīng)列在當(dāng)前文件的庫中了。
5、刪除舞臺(tái)上的影片剪輯。
6、選擇時(shí)間軸第1幀,命名:as,打開動(dòng)作面板,輸入代碼:
//聲明實(shí)例
var myhaw:hawk = new hawk();
//添加到顯示列表
addChild(myhaw);
//myhaw位置(x,y坐標(biāo))
myhaw.x = 100;
myhaw.y = 100;
//注冊(cè)鼠標(biāo)按下事件偵聽器
myhaw.addEventListener(MouseEvent.MOUSE_DOWN, draghaw);
//注冊(cè)鼠標(biāo)釋放事件偵聽器
myhaw.addEventListener(MouseEvent.MOUSE_UP, drophaw);
//定義鼠標(biāo)按下事件偵聽器函數(shù)
function draghaw(dragevent:MouseEvent):void {
//開始拖動(dòng)
dragevent.currentTarget.startDrag();
}
//定義鼠標(biāo)釋放事件偵聽器函數(shù)
function drophaw(dropevent:MouseEvent):void {
//停止拖動(dòng)
dropevent.currentTarget.stopDrag();
}
7、新建圖層,并把它拖到as層的下方,重命名為text。選中第1幀,使用文字工具在舞臺(tái)上輸入:點(diǎn)擊并移動(dòng)mySprite,到(150,200)坐標(biāo)位置。(mySprite是影片剪輯的容器)
8、測(cè)試影片。參見未命名4.fla文件
Flash Player播放SWF文件,默認(rèn)情況下,影片剪輯顯示在舞臺(tái)的左上角。代碼中一個(gè)事件偵聽器用于響應(yīng)鼠標(biāo)點(diǎn)擊,當(dāng)點(diǎn)擊舞臺(tái)的任何地方時(shí),影片剪輯的注冊(cè)點(diǎn)都被重新定位于距離舞臺(tái)上方150個(gè)像素,距離舞臺(tái)左邊200個(gè)像素的位置。
相關(guān)文章

flash cs6鼠標(biāo)跟隨效果實(shí)現(xiàn)代碼分享
flash cs6想要實(shí)現(xiàn)鼠標(biāo)跟隨效果?該怎么制作呢?今天我們就來看看使用as2.0實(shí)現(xiàn)鼠標(biāo)跟隨效果的教程,需要的朋友可以參考下2019-05-19
Flash cs6怎么使用代碼輸入中英文文本?Flash cs6中可以使用文字工具直接輸入文本,也可以使用代碼來輸入文本,該怎么使用代碼輸入文本呢?請(qǐng)看下文詳細(xì)的教程,需要的朋友2018-03-11
flash as3.0抽象類怎么定義? as3.0中有很多抽象類,該怎么定義抽象類和抽象方法呢?下面我們就來看看簡(jiǎn)單的例子,需要的朋友可以參考下http://www.fzitv.net/softs/408402.2018-02-28
flash cs6中怎么使用ActionScript3.0?
flash cs6中怎么使用ActionScript3.0?flash cs6中想要使用ActionScript3.0功能,該怎么使用呢?下面我們就來看看詳細(xì)的教程,需要的朋友可以參考下2018-01-25
Flash中怎么實(shí)現(xiàn)鼠標(biāo)點(diǎn)擊決定圖像位置?
本教程給大家分享一個(gè)Flash小教程,教大家在Flash CS6中怎么實(shí)現(xiàn)鼠標(biāo)點(diǎn)擊決定圖像位置?方法很簡(jiǎn)單,感興趣的朋友歡迎前來一起分享學(xué)習(xí)2018-01-12
Flash中如何用代碼將圖片放在自己想要的舞臺(tái)位置?
本教程教腳本之家的ActionScript教程學(xué)習(xí)者在Flash中如何用代碼將圖片放在自己想要的舞臺(tái)位置,教程講解的詳細(xì),感興趣的朋友歡迎前來分享學(xué)習(xí)2017-11-20
在Flash CS6中使用with函數(shù)繪制背景圖教程
本教程教腳本之家的ActionScript教程學(xué)習(xí)者如何在Flash CS6中使用with函數(shù)繪制背景圖?教程一步步講解的挺詳細(xì),方法也不難,非常適合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怎么制作來回?fù)u擺的花朵的動(dòng)畫?
Flash怎么制作來回?fù)u擺的花朵的動(dòng)畫?Flash中想要給花朵制作一段搖擺的動(dòng)畫效果,該怎么制作呢?下面我們就來看看詳細(xì)的教程,很簡(jiǎn)單,需要的朋友可以參考下2017-05-23
Flash怎么制作流動(dòng)七彩色的文字?想要讓文字動(dòng)起來,該怎么使用flash給文字制作一個(gè)流動(dòng)七彩色的動(dòng)畫呢?下面我們就來看看詳細(xì)的教程,需要的朋友可以參考下2017-04-23











