enterFrame是什么意思?
影片剪輯腳本和按鈕的腳本類似,它們都使用事件處理函數,與按鈕的on關鍵字不同,影片剪輯使用 onClipEvent關鍵字。當某種影片剪輯事件發生時,就會觸發相應的事件處理函數。
影片剪輯最重要的兩種事件是load和enterFrame,這個兩個事件感覺看著很簡單,但是你真的明白嗎?(說實話,我剛開始學的時候,就好長時間不明白,我每次都試這個不對,在試另外的一個,今天有人有也問到了這個問題,我就寫出來給大家一起分享吧!很明白的,就當作復習吧,要不就直接不用看了,不明白的,就好好的看看,有什么疑問,留言告訴給我們,好嗎?)load事件在影片剪輯完全加載到內存中時發生。在每次播放Flash影片時,每個影片剪輯的load事件只發生一次。
在主時間軸停止播放時,影片中的影片剪輯并不會停止播放,這個特性決定了影片剪輯的另一個事件enterFrame的重要性。enterFrame事件在影片每次播放到影片剪輯所在幀時發生。如果主時間軸中只有一幀,且不論它是否在該幀停止,該幀中的影片剪輯都會不斷觸發enterFrame事件,且觸發的頻率與Flash影片的幀頻一致。
影片剪輯事件的使用方法如下所示:
onClipEvent (load) {
var i = 0;
}
onClipEvent (enterFrame) {
trace(i);
i++;
}
當影片剪輯的load事件發生時,將變量i設置為0。當影片剪輯的enterFrame事件發生時,向輸出窗口中發送i的值,然后將i加1。輸出窗口中會從0開始輸出以1遞增的數字序列,直到影片被關閉為止。
為了熟悉影片剪輯事件處理函數的用法,我們來為影片剪輯編寫一段簡單的腳本,使影片剪輯逆序播放,我們將從影片剪輯的最后一幀處開始播放,使用prevFrame命令使影片剪輯每次后退一幀。
本例文件場景中有一個影片剪輯元件rollmc,查看一下它的屬性面板,并沒有為其實例命名,這是因為我們要直接在影片剪輯的動作面板中添加腳本,并不需要用到實例名稱。
選中影片剪輯rollmc,此時動作面板的標題欄中應為“動作-影片剪輯”。打開動作面板,其中添加了如下ActionScript:
onClipEvent (load) {
gotoAndStop(40);
}
onClipEvent (enterFrame) {
prevFrame();
}
在事件處理函數onClipEvent (load)中,令Flash影片的播放頭轉到影片剪輯的第40幀(即最后一幀)。這個事件處理函數只在影片剪輯被加載完成時執行1次。第2個事件處理函數onClipEvent (enterFrame)每播放1幀就執行1次,使影片剪輯回退1幀。
按Ctrl+Enter鍵測試影片,你將看到齒輪以與上例相反的方向轉動,直到影片剪輯的時間軸回到第1幀,prevFrame命令不起作用,影片剪輯停止播放。要讓它連續不斷的播放,可以在影片剪輯元件rollmc的時間軸第1幀的動作面板中添加如下語句:
gotoAndStop(40);
轉載于:https://www.cnblogs.com/maystudy/archive/2012/04/25/2470742.html
總結
以上是生活随笔為你收集整理的enterFrame是什么意思?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 特征选择算法之 ReliefF 算法
- 下一篇: 解决Win11安装Keil芯片包失败/软