Monday, December 6, 2010

AS3 : การกำหนด Movie Clip

Movie Clip คือการกำหนด Symbol ให้มีการเคลื่อนไหวในตัวเองได้อย่างอิสระ

ยกตัวอย่าง เช่น
กำหนดให้วงกลม Movie Clip ชื่อ "cirCle" เมื่อกำหนดแล้วจะถูกเก็บลง Library หากเราต้องการใช้ ก็สามารถดึงออกมาใช้ได้ไม่จำกัด โดยกำหนด Instance Name แตกต่างกันได้

1. วงกลมแรก ตั้งชื่อ Instance Name : "cirCle1"


2. วงกลมสอง ตั้งชื่อ Instance Name : "cirCle2"


หมายความว่า Movie Clip ตั้งชื่ออะไรก็ได้ ที่มองเป็นสัญลักษณ์ก่อน แล้วนำสัญลักษณ์ไปใช้

ยกอีกตัวอย่างหนึ่ง เช่น

รถจักรยานมี 2 ล้อ คือ ล้อหน้า อาจจะกำหนด instance name เป็น frontWheel และ ล้อหลัง instance name เป็น backWheel โดยที่ชื่อ Movie Clip ชื่อ Wheel

หมายความว่า Movie Clip ชื่อ Wheel สามารถสร้าง Instance Name เป็็นชื่อ frontWheel และ backWheel หากต้องการอ้างถึงสามารถเขียนเป็นคำสั่งได้ดังนี้

//การประกาศค่าให้กับ ล้อหน้า
this.Wheel.frontWheel.scaleX = 5;
this.Wheel.frontWheel.scaleY = 5;

//การประกาศค่าให้กับ ล้อหลัง
this.Wheel.backWheel.scaleX = 5;
this.Wheel.backWheel.scaleY = 5;

** ระวัง X,Y ของล้อเดียวกันไม่เท่ากัน ล้อจะเบี้ยวนะครับ (^_^)

// this เป็น Relative Part ใช้บอกลำดับชั้นของ Symbol จากนอกสุดเข้าไปถึงชั้นในสุดคือ "ล้อหน้า และล้อหลัง"

------------------------------------------------------------------------------------------------
Tips
------------------------------------------------------------------------------------------------
ใน AS2 มักใช้ _root เพื่ออ้างอิง MC ในชั้นแรกสุดบน Stage แต่ใน AS3 ไม่สามารถกำหนด _root หรือ root แทน this ได้ ต้องประกาศผ่านตัวแปร ดังตัวอย่างนี้
// กำหนดตัวแปรชื่อ focus ทำงานแทน root ซึ่ง focus เป็นชื่อที่ผมตั้งเองคับอะไรก็ได้
var focus = root;

//ใช้ตัวแปรใหม่ focus แทน root การประกาศค่าให้กับ ล้อหน้า
focus.Wheel.frontWheel.scaleX = 3;
focus.Wheel.frontWheel.scaleY = 3;

//ใช้ this การประกาศค่าให้กับ ล้อหลัง
this.Wheel.backWheel.scaleX = 5;
this.Wheel.backWheel.scaleY = 5;

ส่วน this ใช้ได้ตามปกติ
------------------------------------------------------------------------------------------------

No comments: