ค้นหาบล็อกนี้

วันพฤหัสบดีที่ 29 เมษายน พ.ศ. 2553

กลับมาแว้ว

โอ้ย แย่แล้ว!!หายไปหลายวันเลย มัวนั่งทำ introflash อยู่ วันนี้มาต่อกันเลยดีกว่า
ได้พอนั่งเล่น flash กับ action script บ้าง วันนี้เลยจะพูดถึงพื้นฐานของaction scriptใน การควบคุม flash
โดยหลักๆแล้วรูปแบบการเขียนมี 2 แบบ ก็คือ
- แบบที่ใช้ script ควบคุมวัตถุต่างๆภายในตัว object เอง ซึ่งเราจะเขียน scriptฝังไปในตัววัตถุเลยเราก็ไม่จำเป็นที่จะต้อง ระบุตัววัตถุดังกล่าว ใน หน้าต่าง action ได้เลย
ตัวอย่าง

on(press){
this.play();
}
ข้อเสียคือ เวลาแก้ทีหาให้วุ่นเลย ยิ่งหากเราสร้าง งานที่ซับซ้อนเมื่อไหร่ ก็เจ้งนะสิ
ข้อดี คือ ไม่ต้องเขียนอ้างอิงอะไรมาก

- แบบที่ใช้ script ควบคุมจากภายนอก เช่น เราเขียน script เพื่อ อ้างอิง วัตถุต่างผ่านทางชื่อที่เราตั้งให้กับ object ซึ่งเหมือนการสร้าง instance ของวัตถุนั้นแล้ว เราจึงใช้ method ผ่านทาง instance นั้นได้
เช่น circle.play(); //ตั้งชื่อ instance เป็น circle

_root.circle.onPress=function(){
this.play();
}
ข้อสังเกตนิดนึง symbol แบบ graphic จะไม่มีให้ใส่ชื่อ ของ instance เราจึงไม่สามารถอ้างอิงได้

เรามาดูในเรื่องของขอบเขตการประกาศตัวแปร เป็นเรื่องที่สำคัญทีเดียวเนื่องจาก flash ช่วยเราให้สามารถสร้้าง vector graphic และการสร้างงาน animation บน timeline ได้ง่ายดังนั้น เราจำเป็นต้องรู้ว่า ณ timeline นี้ตัวแปรที่เปรียบเสมือนใช้แทนค่าอะไรก็แล้วแต่ มีผลต่อวัตถุนั้นหรือไม่ หรือ ตัวแปรนั้นตายไปแล้วหรือยัง มาดูกันดีกว่า ว่ามีอะไรบ้าง

1.ระดับ local ->ตัวแปร ประกาศใช้ใน function โดยจะขึ้นต้นด้วย var
หากมีการประกาศ var ตามด้วยตัวแปร ไปแล้ว เมื่อมีการอ้่างอิงตัวแปรที่มีชื่อนั้นเหมือนกัน(แต่ไม่มี var) คือ จะ เป็นตัวเดียวกัน

2.ระดับ timeline
กล่าวคือ เราประกาศตัวแปร ณ ที่ใด ใน frame บน timeline ก็จะสามารถอ้างอิงตัวแปรดังกล่าวได้ตั้งแต่
เฟรมที่ประกาศ เป็นต้นไป ไป ถึง ....ใน time

3.ระดับ Global -> เรียกใช้ได้ทั้งโปรแกรม
ตัวอย่าง _global.my_var=100;

เพิ่ม เติมนิดหน่อยเกี่ยวกับการอ้างอิงในการจัดการ movie clip
หากเรามีการสร้าง movie clip ไว้ซ้อนๆ เราอ้างอิงมันได้เหมือนกับการอ้างอิงไดเรกทอรี เช่น
โดยที่ movie clip หลัก ก่อนที่จะมีการสร้าง movie clipอื่น ๆ จะเป็น _root (movie clip )โดยที่การอ้างอิง
มีด้วยกัน 2 แบบ คือ
1. แบบAbsolute -> เริ่มจาก _root ไปเรื่อยๆจนถึงที่ต้องการ รับรองถ้าพิมพ์ถูก ไล่บำดับถูก หาเจอแน่นอน
2.แบบ Relative -> อ้างอิงกับmovie clip ที่ทำการฝังcode เอาไว้

ไม่มีความคิดเห็น:

แสดงความคิดเห็น