影片剪輯的Action編寫規則

來源:互聯網
上載者:User
  電影剪輯在flash中可以說是使用最多的一種元件了,那麼對於它的AS也是不少。
  在講解之前,我還是要重新說一下電影剪輯AS的編寫規則,和上次講按鈕一樣,分為兩種,一種是寫在電影剪輯本身上,一種是寫在時間軸上面。
  一、首先咱們先來做個簡單的小例子。(點擊這裡下載源檔案。)

  或許你不用AS就能做出一個小球的移動動畫。但是如果讓你用AS來實現小球的移動呢?下面來看看如何用AS來實現吧。
  在這個例子裡,你首先會瞭解到如何在電影剪輯本身上編寫AS,以及編寫規則。
  1、 建立立一個電影剪輯元件,裡面你就隨便畫一個圓吧。之後把這個影片剪輯拖放到舞台之中(也就是建立一個此影片剪輯的執行個體)。
  2、 現在開始編寫指令碼,選中這個MC,按F9開啟動作面板,按照圖顯示選擇onClipEvent,之後在顯示的事件中選擇enterFrame,然後在裡面編寫指令碼如下:
this._x+=5

  這個指令碼編寫之後應該是:
onClipEvent (enterFrame) {// enterFrame的意思是以影片幀不斷地觸發此動作
this._x += 5; //this代表這個影片剪輯自身。_x表示影片剪輯的X軸座標。
}

  呵呵,按下你的ctrl+斷行符號測試一下吧,一個簡單的移動動畫就搞定了。
  從這個例子咱們不難看出,如果把AS寫在影片剪輯本身上,那麼它是有自己的書寫格式的。正確的書寫格式就是:
onClipEvent (事件) {
//需要執行的指令碼程式
}
  這個可以看成是公式,你記住就行了,是寫在影片剪輯身上的。括弧裡的“事件”其實是個觸發器,當事件發生時,執行該事件後面花括弧中的語句。,具體有哪些事件,我把它們都列出來。
  - load 影片剪輯一旦被執行個體化並出現在時間軸中時,即啟動此動作。
  - unload 在從時間軸中刪除影片剪輯之後,此動作在第一幀中啟動。處理與 Unload 影片剪輯事件關聯的動作之前,不向受影響的幀附加任何動作。
  - enterFrame 以影片幀頻不斷地觸發此動作。
  - mouseMove 每次移動滑鼠時啟動此動作。_xmouse 和 _ymouse 屬性用於確定當前滑鼠位置。
  - mouseDown 當按下滑鼠左鍵時啟動此動作。
  - mouseUp 當釋放滑鼠左鍵時啟動此動作。
  - keyDown 當按下某個鍵時啟動此動作。使用 Key.getCode 方法擷取最近按下的鍵的有關資訊。
  - keyUp 當釋放某個鍵時啟動此動作。使用 Key.getCode 方法擷取最近按下的鍵的有關資訊。
  - data 當在 loadVariables 或 loadMovie 動作中接收資料時啟動此動作。當與loadVariables 動作一起指定時,data 事件只發生一次,即載入最後一個變數時。當與loadMovie 動作一起指定時,擷取資料的每一部分時,data 事件都重複發生。
  瞭解了事件之後,你可以自己試著修改一下指令碼,如果讓你們點一下滑鼠,舞台上的圓就移動一下,該怎麼做呢?
  關於把AS寫在影片剪輯本身的例子先講到這,下面來看看如果把AS寫在時間軸上面的話,應該怎麼寫。
  首先你把剛才的指令碼去掉。然後需要為這個影片剪輯執行個體起一個名字,比如起名為mc
在選中時間軸的第一楨,開啟動作面板,輸入以下指令碼:
mc.onenterframe = function() {
this._x += 5; //你也可以把這句改為mc._x+=5 自己想一下為什麼。
};
  顯而易見,在時間軸上的寫法就應該套用以下公式:
執行個體名.事件名稱=function(){
//指令碼程式
  需要注意的是,這種寫法的事件名稱不要忘了在前面加一個on,比如,事件如果是enterframe的話,你就應該寫成onenterframe
  下面簡單說一下影片剪輯的屬性。比如,影片剪輯有自己的X、Y軸座標,有自己的透明度(_alpha),這些都是它的屬性。
  那麼如何使用這些屬性呢?你可以使用“點”文法來對屬性進行設定。
  把上面的指令碼修改一下。
mc.onenterframe = function() {
mc._x += 5;
mc._alpha = random(100);
};
  這裡我加了一句this._alpha = random(100),它是設定影片剪輯的透明度的,使用的語句就是_alpha。後面的random()函數是隨機選取一個100以內的數字作為它的透明度。從這個句子可以看出,“點”文法使用方法就是:執行個體名.屬性(mc._alpha),你甚至可以簡單理解為“點”就是“的”,那麼this._alpha這句你就可以理解為:影片剪輯mc的透明度
  上面的指令碼mc._alpha = random(100)也可以改為_root. mc._alpha = random(100)
那麼,你就可以理解為:舞台上的影片剪輯mc的透明度是隨機播放100內的值。
  關於影片剪輯的AS基本編寫規則就說到這裡,以後在具體的例子當中相信會更深刻的理解。

相關文章

E-Commerce Solutions

Leverage the same tools powering the Alibaba Ecosystem

Learn more >

Apsara Conference 2019

The Rise of Data Intelligence, September 25th - 27th, Hangzhou, China

Learn more >

Alibaba Cloud Free Trial

Learn and experience the power of Alibaba Cloud with a free trial worth $300-1200 USD

Learn more >

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。