Neric-Club.Com
  สารบัญเว็บไซต์
  ทรัพยากรคลับ
  พิพิธภัณฑ์หุ่นกระดาษ
  เปิดประตูสู่อาเซียน@
  พันธกิจขยายผล
  ชุมชนคนสร้างสื่อ
  ห้องภาพ/ห้องเพลง
  คลีนิคสุขภาพ
  บริหารจิต
  ห้องข่าว
   นิตยสารออนไลน์
  วรรณกรรมเพื่อเยาวชน
  ลมหายใจของใบไม้
  เรื่องสั้นปันเหงา
  อังกฤษท่องเที่ยว
  อนุรักษ์ไทย
  ศิลปวัฒนธรรมไทย
  ต้นไม้ใบหญ้า
  สายลม แสงแดด
  เตือนภัย
  ห้องทดลอง
   มุมเบ็ดเตล็ด
  เพลงหวานวันวาน
  คอมพิวเตอร์
  ความงาม
  รักคนรักโลก
  วิถีพอเพียง
  สัตว์เลี้ยง
  ถนนดนตรี
  ตามใจไปค้นฝัน
Click!!!!!

Share your work and start earning  

 
 

'องค์ความรู้ในโลกนี้มีมากมาย
เหมือนใบไม้ในป่าใหญ่
มนุษย์เราเรียนรู้ได้
แค่ใบไม้หนึ่งกำมือของตนเอง
ผู้ใดเผยแผ่ความรู้
อันเป็นวิทยาทานแก่ผู้อื่น
นั่นคือกุศลอันใหญ่ยิ่ง'
 
องค์พระสัมมาสัมพุทธเจ้า

สถิติผู้เยี่ยมชมเวปไซต์
9953453  

ชุมชนคนสร้างสื่อ

สคริปใน Flash นั้นดูไปก็คล้ายๆกับ Perl (ที่เอาไว้เขียน CGI) คำสั่งต่างหรือตัวแปรจะคล้ายกันมาก รวมทั้งชื่อคำสั่งก็เป็นภาษามนุษย์ ทำให้เข้าใจง่าย สคริปใน Flash นั้นทำอะไรไม่ได้มากมายนัก แต่ถ้ารู้จักใช้ก็อาจจะทำให้ Flash มีความสามารถมากขึ้นอีกเช่น การทำ Len Flare โดยที่จุดศูนย์กลางของดวงไฟจะอยู่ที่เมาส์ตลอด ผมขอบอกได้เลยว่าทำไม่ได้ง่ายๆแน่นอน หรืออาจจะทำไม่ได้เลย แต่ว่ามีคนทำได้ครับ เขาใช้สมการมาคำนวณเพื่อหาจุดวางของวงกลมแต่ละวง ถ้าคุณสนใจสามารถดาวน์โหลดได้ที่หัวข้อดาวน์โหลดครับ (คงจะไม่สอนทำ เพราะว่าค่อนข้างงง แต่สามารถนำไปดัดแปลงใช้ได้ง่าย)

เริ่มที่ตัวแปรก่อน
ตัวแปรเป็นตัวที่เอาไว้เก็บข้อมูลต่างๆ ไม่ว่าจะเป็นตัวเลขหรือตัวอักษร ตัวแปรใน Flash จะมีอยู่ 2 แบบคือ แบบ String กับแบบ Array
ตัวแปรแบบ String ตัวแปรชนิดนี้เก็บได้ทั้งตัวอักษรและตัวเลข ใช้งานง่ายไม่ยุ่งยาก เนื่องจากว่าสามารถเก็บได้เพียงครั้งละ 1 ค่าเท่านั้น
ตัวแปรแบบ Array ตัวแปรชนิดนี้เก็บได้ทั้งตัวอักษรและตัวเลขเหมือนกัน แต่จะพิเศษตรงที่สามารถเก็บได้ครั้งละหลายๆตัวอักษร การเก็บก็จะเก็บเป็นช่อง 1 ช่องจะเก็บได้ 1 ค่า สำหรับตัวแปรชนิดนี้ผมไม่เคยใช้ เลยไม่สามารถบอกวิธีใช้ได้ เพราะว่าส่วนใหญ่จะใช้ตัวแปรแบบ String ซะมากกว่า ถ้าคุณอยากรู้รายละเอียดเกี่ยวกับตัวแปรชนิดนี้ให้หาอ่านได้จากคู่มือการเขียนโปรแกรมภาษาไหนก็ได้ ซึ่งตัวแปรแบบนี้จะมีใช้ทุกภาษา

การประกาศใช้งานตัวแปร
คำสั่งที่เอาใว้ประกาศตัวแปรก็คือคำสั่ง Set Variable หลังจากที่เราเลือกคำสั่งนี้แล้ว Flash จะให้เรากำหนดค่าต่างๆคือ

- ช่อง Variable เอาไว้ใส่ชื่อของตัวแปร
- ช่อง Value เอาไว้ใส่ค่าของตัวแปร

ที่ข้างๆ TextBox จะมีปุ่มอยู่ปุ่มหนึ่ง เขียนไว้ว่า abc เมื่อคุณคลิ๊กที่ปุ่มนี้ จะมีตัวเลือกอยู่ 2 ตัวคือ String Literal กับ Expression ค่าปกติที่ Flash จะกำหนดเอาไว้คือ String Literal ซึ่งหมายความว่า ทุกตัวอักษร,เครื่องหมาย,ตัวเลข ที่คุณใส่ลงไป Flash จะถือเป็นตัวอักษรทั้งหมด(ถึงแม้คุณจะใส่ 1+2 Flash ก็จะถือว่าเป็นตัวอักษร จะไม่นำมาคำนวณ) ถ้าคุณเลือกเป็น Expression Flash จะตีความหมายของเครื่องหมายด้วย จะไม่มองเป็นตัวอักษรอีกต่อไป(ถ้าคุณใส่ 1+2 Flash ก็จะนำ 1+2 มาคำนวณ) ส่วน Expression Editor คือส่วนที่เอาไว้เขียนสคริปเมื่อเราเลือก Expression






ตัวอย่างคำสั่ง
Set Variable Set Variable: "test" = "1+1"
จากคำสั่งนี้ ตัวแปรที่ชื่อ Test จะมีค่าเท่ากับ 1+1โดยกำหนดชนิดของค่าเป็น String Literal

Set Variable: "test" = 1+1
จากคำสั่งนี้ ตัวแปรที่ชื่อ Test จะมีค่าเท่ากับ 2 โดยกำหนดชนิดของค่าเป็น Expression
โปรดสังเกตุว่า เมื่อเรากำหนดชนิดของค่าเป็น String Literal จะมีเครื่องหมาย "" ครอบอยู่ด้วย แต่ถ้ากำหนดเป็น Expression จะไม่มีเครื่องหมาย "" ครอบ

การโหลดตัวแปรจาก Movie Clip
คุณสามารถโหลดตัวแปรจาก Movie Clip ได้โดยใช้คำสั่ง
Set Variable: "ชื่อตัวแปร" = /ชื่อมูฟวี่คลิป:ชื่อตัวแปร

คำสั่ง Go to
คำสั่งนี้เป็นคำสั่งที่สั่งให้ Flash ข้ามไปยังเฟรมต่างๆหรือ Scene อื่นๆได้ หลังจากที่คุณเลือกคำสั่ง Go to มาจากปุ่มบวกแล้ว ทางด้านขวาของหน้าต่าง ที่ช่อง Scene จะมีตัวเลือกดังนี้

- current scene อันนี้เป็นค่าปกติที่ Flash จะใส่มาให้ เป็นการบอก Flash ว่าให้นำคำสั่ง Go to ใช้กับ Scene ปัจจุบัน
- next scene เป็นการสั่งให้ Flash ข้ามไปยัง Scene ถัดไป โดยคุณสามารถกำหนดเฟรมที่จะไปได้
- previous scene เป็นการสั่งให้ Flash ข้ามไปยัง Scene ก่อนหน้านี้ โดยคุณสามารถกำหนดเฟรมที่จะไปได้
- Scene 1 อันนี้เป็นชื่อของ Scene ที่คุณตั้ง คุณสามารถใส่ชื่อ Scene ที่ต้องการจะไป ลงในช่องนี้ได้เลย

ช่อง Name จะเป็นช่องที่ไว้ใส่หมายเลขเฟรม ที่ต้องการจะไป
ช่อง Label เป็นช่องที่ไว้ใส่ชื่อเฟรม ที่ต้องการจะไป
ช่อง Expression เป็นช่องที่เอาไว้ใส่สคริป หรือสมการบางอย่างเพื่อให้ Flash นำสคริป หรือสมการเหล่านี้ไปคำนวณ
ช่อง Next Frame เป็นช่องที่สั่งให้ Flash ไปยังเฟรมถัดไป
ช่อง Previous Frame เป็นช่องที่สั่งให้ Flash ไปยังเฟรมก่อนหน้านี้

ส่วนตัวเลือก Go to and Play นั้น เป็นการบอก Flash ว่าหลังจากที่ข้ามไปยังเฟรมที่กำหนดแล้ว ให้ Play ทันที แต่ถ้าตัวเลือกนี้ไม่ได้ถูกเลือกไว้ ทำให้ Flash หยุดเล่นหลังจากที่ข้ามไปยังเฟรมที่กำหนดแล้ว


คำสั่ง IF
คำว่า IF แปลว่า "ถ้า" ซึ่งคำสั่งนี้เป็นคำสั่งเงื่อนไข สำหรับตรวจสอบบางสิ่งบางอย่าง(ส่วนใหญ่จะเป็นตัวแปร) คำสั่ง IF มีรูปแบบคำสั่งดังนี้

If( เงื่อนไข )
คำสั่งที่ต้องการให้ทำ หากเงื่อนไขเป็นจริง
Else
คำสั่งที่ต้องการให้ทำ หากเงื่อนไขเป็นเท็จ
End If

แต่ในการใช้งานจริงๆแล้ว เราอาจจะไม่ใส่ Else ก็ได้ แบบคำสั่งนี้

If( เงื่อนไข )
คำสั่งที่ต้องการให้ทำ หากเงื่อนไขเป็นจริง
End If

ตรงคำว่า เงื่อนไข ให้ใส่เงื่อนไขที่เราต้องการลงไปในช่อง Condition เช่นเราต้องการตรวจสอบว่าค่าของตัวแปร a มีค่าเท่ากับ 1 หรือไม่ ถ้าใช่ก็ให้ทำการเปลี่ยนค่าของตัวแปร a ให้เป็น 0 เราจะเขียนคำสั่งได้ดังนี้

If( a = 1)
Set Variable: "a" = "1"
End If

ในเงื่อนไข a = 1 เราสามารถเขียนได้อีกแบบคือ a eq 1 ซึ่งคำว่า eq นั้นย่อมาจาก Equals ที่แปลว่า เท่ากับ แต่ถ้าเราต้องการเช็คว่าตัวแปร a มีค่าไม่เท่ากับ 1 หรือไม่ ถ้าใช่ก็ให้เปลี่ยนค่าของตัวแปร a เป็น 1 จะเขียนเงื่อนไขดังนี้

If( a <> 1)
Set Variable: "a" = "1"
End If

ในเงื่อนไข a <> 1 เราสามารถเขียนได้อีกแบบคือ a ne 1 ซึ่งคำว่า ne นั้นย่อมาจาก Not Equals ที่แปลว่า ไม่เท่ากับ

โอเปอเรเตอร์
เครื่องหมาย
สตริง
คำเต็ม(ไม่ใช้ในการเขียนสคริป)
เท่ากับ
=
eq
Equals
ไม่เท่ากับ
<>
ne
Not Equals
มากกว่า
>
gt
Greater Than
มากกว่าหรือเท่ากับ
>=
ge
Greater Than or Equal To
น้อยกว่า
<
lt
Less Than
น้อยกว่าหรือเท่ากับ
<=
le
Less Than or Equal To


การใส่เงื่อนไขหลายตัว
บางครั้งเราก็อาจจะต้องตรวจสอบหลายเงื่อนไข เพื่อเลือกทำงานมากกว่า 2 อย่าง เราจะใช้คำสั่งแบบนี้

If (เงื่อนไข)
คำสั่งที่ต้องการให้ทำ
Else If (เงื่อนไข)
คำสั่งที่ต้องการให้ทำ
Else
คำสั่งที่ต้องการให้ทำ
End If

คุณสามารถใส่คำสั่ง else ได้โดยเลือกบรรทัดคำสั่ง If แล้วคลิ๊กที่ปุ่ม Add Else/Else If Clause จริงๆแล้วเราสามารถใช้คำสั่ง If หลายๆอันก็ได้ แต่เพื่อความเป็นระเบียบควรจะใช้คำสั่ง else If แทนจะดีกว่าครับ การใส่คำสั่ง Else If นั้นจะต้องใส่คำสั่ง Else ซะก่อน หลังจากนั้นก็ให้คลิ๊กที่บรรทัดคำสั่ง Else ในช่อง Action ให้เลือกเป็น Else If เท่านั้นเองครับ



คำสั่ง On MouseEvent
คำสั่งนี้จะใช้ได้กับ Symbol ที่เป็น Button เท่านั้น โดยคำสั่งนี้จะเป็นคำสั่งในการตรวจสอบเหตุการณ์ของเมาส์ ตามที่เรากำหนด สมมุติว่าเราตั้งให้ตรวจสอบเมาส์ว่ามีการคลิ๊กที่วัตถุนี้หรือไม่ เมื่อ Flash ตรวจสอบได้ว่ามีการคลิ๊กที่วัตถุนี้จริง ก็จะทำตามคำสั่งที่เรากำหนดไว้ ในคำสั่ง On MouseEvent นี้จะมีตัวเลือกย่อยดังนี้

- Press สำหรับตรวจสอบเหตุการณ์ของเมาส์เมื่อเมาส์กำลังคลิ๊ก (แต่ยังไม่ปล่อยปุ่มที่คลิ๊ก)
- Release สำหรับตรวจสอบเหตุการณ์ของเมาส์เมื่อ เมาส์คลิ๊กแล้ว (ปล่อยปุ่มที่คลิ๊กแล้ว เป็นเหตุการ์ต่อจาก Press) ตัวเลือกนี้ถูกใช้กันมาก แม้แต่ในวินโดวส์
- Release Outside สำหรับตรวจสอบเหตุการณ์ของเมาส์เมื่อเมาส์คลิ๊กค้างที่วัตถุนี้ แล้วลากเมาส์ไปปล่อยปุ่มที่คลิ๊กค้างไว้ที่นอกวัตถุนี้
- Roll Over สำหรับตรวจสอบเหตุการณ์ของเมาส์เมื่อเมาส์อยู่เหนือวัตถุนี้
- Roll Out สำหรับตรวจสอบเหตุการณ์ของเมาส์เมื่อเมาส์ออกนอกขอบเขตุของวัตถุนี้ (หลังจากที่อยู่เหนือวัตถุนี้แล้ว)
- Drag Over สำหรับตรวจสอบเหตุการณ์ของเมาส์เมื่อเมาส์คลิ๊กค้างที่วัตถุนี้ แล้วนำเมาส์ออกไปนอกขอบเขตุของวัตถุนี้ แล้วก็นำเมาส์มาอยู่บนวัตถุนี้อีกครั้ง โดยที่ยังคลิ๊กค้างไว้อยู่
- Drag Out สำหรับตรวจสอบเหตุการณ์ของเมาส์เมื่อเมาส์คลิ๊กค้างที่วัตถุนี้ แล้วนำเมาส์ออกไปนอกขอบเขตของวัตถุนี้ โดยที่ยังคลิ๊กค้างอยู่
- Key Press สำหรับตรวจสอบการกดปุ่มของคีย์บอร์ด ว่าตรงกับที่เรากำหนดไว้หรือไม่ (ใส่ลงในช่องข้างๆ)

ก่อนอื่นต้องทำความเข้าใจเกี่ยวกับ Press กับ Release กันก่อนครับ เผื่อมีคนไม่เข้าใจ ในขณะที่เราคลิ๊กปุ่มเมาส์ค้างไว้(กี่วินาทีก็ได้) เหตุการณ์ตอนนี้จะเป็น Press แต่เมื่อใดที่เราปล่อยปุ่มเมาส์ที่คลิ๊กไว้ เหตุการณ์ในตอนนี้ก็จะกลายเป็น Release ทันที


ตัวอย่าง
สมมุติว่าเราต้องการจะให้ Movie เล่นเมื่อคลิ๊กที่ปุ่มที่เรากำหนด ขั้นแรกเราก็ต้องวาดปุ่มขึ้นมาก่อน หลังจากนั้นก็ทำให้เป็น Symbol โดยการกด F8 ในช่อง Behavior ให้กำหนดเป็น Button ส่วนในช่อง Name ให้ใส่ชื่อเป็นอะไรก็ได้ กด OK แล้วก็ให้ดับเบิ้ลคลิ๊กที่ปุ่มที่เราเพิ่งสร้าง จะมีหน้าต่าง Instance Properties ขึ้นมา ให้เลือกแท็ป Action คลิ๊กที่ปุ่มบวก เลือกคำสั่ง play ได้เลยครับ จะเห็นว่า Flash จะใส่คำสั่ง On MouseEvent มาให้เราโดยอัตโนมัติ

คำสั่ง Loop
คำสั่งนี้เป็นคำสั่งสำหรับวนลูปเพื่อทำงานบางสิ่งบางอย่าง สำหรับการใช้งานคำสั่ง Loop นั้น เราจะต้องใช้ตัวแปร 1 ตัวมากำหนดการวนลูป โดยรูปแบบคำสั่งจะเป็นแบบนี้

Set Variable: "value" = "1"
Loop While (value <= 200)
คำสั่งอื่นๆ
Set Variable: "value" = value+1
End Loop

จากคำสั่ง เริ่มต้นด้วยการประกาศตัวแปร value = 1 แล้วก็ต่อด้วยคำสั่ง Loop while (value = 200) หมายความว่าให้วนลูปทำงานตามคำสั่ง "คำสั่งอื่นๆ" จนกระทั่งนิพจน์ value <= 200 ไม่เป็นจริง จึงจะออกจากการวนลูป(จะออกจากลูปเมื่อ Value = 201 หรือมากกว่า) แต่ถ้าตราบใดที่นิพจน์ value <= 200 ยังเป็นจริงอยู่ จะยังไม่มีการออกจากลูป ให้สังเกตุว่าบรรทัดล่างของ "คำสั่งอื่นๆ" จะมีการนำค่าของตัวแปร value มาบวกอีก 1 ถ้าไม่มีการบวกให้ค่าของตัวแปร value เพิ่มขึ้นแล้ว Loop อันนี้ก็จะกลายเป็น Infinity Loop (วนลูปไม่รู้จบ)ไปทันที (ก็เพราะ value ไม่เกิน 200 ซักที)



คำสั่ง Call
เป็นคำสั่งสำหรับเรียกใช้สคริปจากเฟรมอื่น เพียงแค่ใส่ชื่อเฟรมที่ต้องการโหลดสคริปเข้ามาทำงานลงไปในช่อง Frame เท่านั้นเอง ไม่มีอะไรมาก

คำสั่ง Set Properties
เป็นคำสั่งสำหรับกำหนดคุณสมบัติของ Movie Clip เท่านั้น และ Movie Clip ที่เราจะกำหนดคุณสมบัตินั้น จะต้องใส่ชื่อลงในช่อง Instance Name ในหน้าต่าง Instance Properties ด้วย สำหรับการกำหนดคุณสมบัตินั้นให้คุณเลือกคุณสมบัติที่คุณต้องการกำหนดที่ช่อง Set และในช่อง Target ให้คุณใส่ชื่อ Instance name ที่คุณกำหนดไปแล้วลงไป หรือจะคลิ๊กที่ปุ่มข้างๆ แล้วเลือก Target Editor แล้วก็เลือกชื่อ Instance name ของ Movie Clip ที่คุณต้องการ หลังจากนั้นก็ให้ใส่ค่าลงไปในช่อง Value ครับ



คำสั่งทั้งหมดที่ผมกล่าวถึงไปนั้นเป็นคำสั่งที่จะใช้มากเป็นพิเศษ ส่วนใหญ่จะเข้าใจได้ไม่ยาก บางครั้งคำสั่งเหล่านี้เราอาจจะไม่ได้ใช้เลย เนื่องจากเราจะใช้ Flash มาทำโฮมเพจกันซะมากกว่า(ซึ่งต้องการความสวยงามมากกว่า) สรุปแล้วคำสั่งพวกนี้จะช่วยให้เราสามารถใช้ Flash ทำงานบางอย่างได้โดยไม่ต้องพึ่ง CGI ทำให้สามารถทำงานได้เร็วยิ่งขึ้น ตบท้ายอีกนิด คือว่าคุณไม่จำเป็นต้องไปศึกษาการเขียนโปรแกรมภาษา Perl อย่างเดียวหรอกนะครับ ศึกษาจากภาษาไหนก็ได้ (อย่าง VB หรือ Java เป็นต้น) เพียงแต่ว่าถ้าคุณไปศึกษา Perl เนี่ย จะทำให้คุณได้หัดเขียน CGI ไปในตัว (Perl สามารถเขียน CGI ได้) เห็นไหมครับ เรียนโปรแกรมเดียวใช้ได้ 2 โปรแกรม สุดคุ้ม!!!


หน้าที่ :: 56   57   58   59   60   61   62   63   64   65   66  


Copyright © 2012 Neric-Club.Com All Rights Reserved