18 ตุลาคม 2553

AS3 : Stop(); และ Event.ENTERFRAME

สำหรับ Function อย่าง Stop(); หรือ gotoAndStop(เฟรมเป้าหมาย); นั้น

ไม่ใช่ว่าเมื่อเรา Stop ไว้ที่ Frame ที่กำหนดแล้ว Flash ไม่ทำการเล่นต่อ แต่เป็นการเล่นซ้ำๆ ใน Frame ที่เราทำการ Stop ไ้ว้นั้น
ดังนั้นถ้าเรามีการทำ AddEventListener(Event.ENTERFRAME, ฟังก์ชั่นที่กำหนดให้เล่นทุกเฟรม); แล้ว หากเราต้องการให้ทุกอย่างหยุดลงจริงๆ
จึงจำเป็นที่จะต้องทำการ RemoveEventListener(Event.ENTERFRAME, ฟังก์ชั่นที่กำหนดให้เล่นทุกเฟรม); นั้นด้วยจึงจะสมบูรณ์

ข้อที่ควรระวัง
Event อย่าง Event.ENTERFRAME นั้นจะทำงานทันทีที่เข้าสู่ Frame นั้นๆ ซึ่งรวมถึงทำงานก่อนการทำงาน ActionScript ที่เขียนไว้ใน Frame นั้นๆ ด้วย
ดังนั้นบางครั้งอาจเกิดการทำงานที่เกินกว่าที่ต้องการได้ หากจัดจังหวะการเล่น Frame ไม่ดี

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

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