Flash MX 2004新特性執行個體學習一

來源:互聯網
上載者:User

    Flash MX 2004的試用版終於可以下載了,它協助檔案中內建的例子很好地反映了2004中新增加的功能。下面我們通過學習這些例子的製作,來熟悉在2004中新增加的功能。這些例子都是從Flash MX 2004的協助文檔中來的。在我的windows2000中的儲存路徑是C:Documents and SettingsAdministratorLocal SettingsApplication DataMacromediaFlash MX 2004enConfigurationSamples。如果找不到的話,在尋找檔案中搜尋“Samples”就可以找到。

  下面我們就來學習Flash MX 2004中激動人心的新特性吧。在每個執行個體的講解都分為涉及特性、製作過程、實際用途三個部分。

  執行個體一、Accessible Applications

  一、涉及特性

  這個執行個體主要涉及新增組件的應用,以及對組件的編程。在2004中,組件分為Data、Media、UI三大類別。讓人驚喜的是在UI類別中差不多已經包括了製作WEB應用所需要的所有組件,以後用Flash製作網頁再也不麻煩了。而且通過編程可以對組件進行靈活、全面的控制。

  二、製作過程

  1. 按“Ctrl + F8”建立一個Symbol,類型為“Movie Clip”,命名為“display”。將一個“Label”組件拖到此Symbol的情境中,命名為“label”。將此Symbol拖到情境中,命名為“display”。

  2. 將一個“List”組件拖到情境中,命名為“colorList”,在“label”屬性中增加內容“Green”、“Blue”、“Brown”、“Red”、“Orange”、“Purple”。

  3. 將兩個“Text Input”組件拖到情境中,分別命名為“usernameInput” 和“passwordInput”,並設定第二個的屬性中的“password”為true。

  4. 將一個“Button”組件拖到情境中,命名為“submitButton”,設定“Label”屬性為“Submit”。

  5. 將兩個“Radio Button”組件拖到情境中,分別命名為“radio_single”和“radio_multiple”,設定“Label”屬性為“Single Selection”和“Multiple Selection”。

  6. 將四個“Label”組件拖到情境中,分別命名為“caption”、“username_label”、“password_label”、“select_label”。分別設定“Text”屬性為“Please enter your name”、“First Name:”、“Last Name:”、“Please choose an item:”。

  7. 按“Ctrl + F8”建立一個Symbol,類型為“Movie Clip”,命名為“arrow_mc”。在此Symbol的情境中繪製一個箭頭。將此Symbol拖到情境中,命名為“arrow_mc”。調整情境中的Symbol的布局如圖所示。

    8. 在主情境的時間軸上增加一個層,命名為“Action”,在此層的Action面板上增加代碼如下:   

  //注釋1

  /* Copyright 2003 Macromedia, Inc. All rights reserved.

  The following is Sample Code and is subject to all restrictions

  on such code as contained in the End User License Agreement

  accompanying this product.

  */

  //注釋2

  display.onEnterFrame = function () {

  if (Selection.getFocus() != null) {

  var mcfocus:MovieClip;

  var mcloc:Object = {x:0, y:0};

  // Get the object that's in focus

  mcfocus = eval(Selection.getFocus());

  // Set the label

  this.label.text = mcfocus;

  // Get the location of the object in global coordinates

  mcloc = {x:mcfocus._x, y:mcfocus._y};

  mcfocus._parent.localToGlobal(mcloc);

  //注釋3

  // Move the arrow to point to it

  this._parent.arrow_mc._x = mcloc.x;

  this._parent.arrow_mc._y = mcloc.y;

  } else {

  //注釋4

  label.text = "There is no object in focus.";

  this._parent.arrow_mc._x = 0;

  this._parent.arrow_mc._y = 0;

  }

  }

  //注釋5

  function onClick (evt) {

  if (evt.target.selectedRadio == radio_single) {

  colorList.multipleSelection = false;

  } else {

  colorList.multipleSelection = true;

  }

  }

  //注釋6

  radioGroup.addEventListener("click", onClick);

  radio_single.selected = true;

  2004中的Action跟MX的Action有很大的區別,所以盡量詳細的解釋。  

   注釋1:是著作權資訊,執行個體的來源是在Flash MX 2004的協助檔案中,所以保留這樣的著作權資訊。

    注釋2:這個函數是根據滑鼠選定的組件來更改在Display中顯示的內容。

    注釋3:將箭頭移動到滑鼠選定的組件附近。

    注釋4:滑鼠沒有選定如何組件,將箭頭放在左上方。

    注釋5:是Radio Button的偵聽函數,根據選定的Radio Button設定List組件中的屬性。

    注釋6:為兩個Radio Button組件增加“click”的事件偵聽,偵聽函數為“OnClick”,並設定預設選擇的Radio Button為單選。

  三、實際用途

  這個執行個體主要涉及的是UI組件和對組件的編程。UI組件的用途主要是在WEB方面,比如在用Flash製作網頁中的表單時,豐富的組件和靈活的控制會讓工作變得非常輕鬆。而且也提供了一個組件應用的思路:不單單可以將常用的東西封裝成組件,也可以通過編程更靈活地控制組件。

    執行個體二、Behaviors Scrapbook

  一、涉及特性

  此執行個體涉及的特性主要有兩個:讀取圖片和設定Symbol的層次。不算是新增加的特性,但在效能方面的改進還是比較大的。

  二、製作過程

  1. 按“Ctrl + F8”建立一個Symbol,類型為“Movie Clip”,命名為“photo”,在此Symbol中繪製一個黑色的長方形。

  2. 按“Ctrl + F8”建立一個Symbol,類型為“Movie Clip”,命名為“snapshot”,在此Symbol中繪製一個灰色的長方形。將Symbol “photo”拖到此Symbol中,調整其位置,並命名為“photo”。

  3. 將Symbol “snapshot”拖五次到情境中,命名為“snapshot1”、“snapshot2”、“snapshot3”、“snapshot4”、“snapshot5”。分別在每一個“snapshot”的Action面板上增加語句如下:   

  on (press) {

  //注釋1

  startDrag(this);

  //注釋2

  mx.behaviors.DepthControl.bringToFront(this);

  }

  on (release) {

  //注釋3

  stopDrag();

  }

  注釋1:當滑鼠按下的時候,拖動圖片。

    注釋2:設定滑鼠所在的圖片為最前端。

    注釋3:當滑鼠鬆開的時候,停止拖動圖片。

  4. 在主情境的時間軸上增加一個層,命名為“Action”,在此層的Action面板上增加代碼如下:   

  /* Copyright 2003 Macromedia, Inc. All rights reserved.

  The following is Sample Coe and is subject to all restrictions

  on such code as contained in the End User License Agreement

  accompanying this product.

  */

  //注釋1

  this.snapshot1.photo.loadMovie("image1.jpg");

  this.snapshot2.photo.loadMovie("image2.jpg");

  this.snapshot3.photo.loadMovie("image3.jpg");

  this.snapshot4.photo.loadMovie("image4.jpg");

  this.snapshot5.photo.loadMovie("image5.jpg");

  注釋1:分別從Flash所在的檔案夾中讀取相應的圖片出來。

  5. 儲存此Flash文檔,將5張圖片放在此Flash所在的檔案夾中。注意圖片的命名要跟第4步中的圖片名一樣。

  三、實際用途

  讀取圖片的功能其實在Flash MX中已經有了。不過從圖片的讀取速度跟顯示效果來看,改進還是不小的。以後在用Flash製作圖片瀏覽器時,可以先讀取圖片的檔案名稱,再動態讀取所在檔案夾中的圖片。




相關文章

Cloud Intelligence Leading the Digital Future

Alibaba Cloud ACtivate Online Conference, Nov. 20th & 21st, 2019 (UTC+08)

Register Now >

Starter Package

SSD Cloud server and data transfer for only $2.50 a month

Get Started >

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 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。