11/22/2551

Action Scrip คำสั่งต่างๆใน Flash

ขอบคุณข้อมูลจาก : http://www2.cs.science.cmu.ac.th
โครงสร้างของ Action Script
คำสั่งต่าง ๆ ต้องใช้ตัวอักษรให้ตรงกับที่ flash กำหนด
เท่านั้น เช่น ถ้า for ต้องเป็นตัวเล็กทั้งหมด ถ้าตัวใดตัวหนึ่ง
เป็นตัวใหญ่ไม่ได้ (Case sensitive)
แต่บางคำสั่งสามารถใช้ได้ทั้งตัวอักษรตัวเล็กตัวใหญ่ผสม
กัน (Case insensitive)
ส่วนมากเป็นคำสั่งที่ไม่มีเครื่องหมาย { } อยู่รวมถึงการตั้ง
ชื่อตัวแปรต่าง ๆ
ตัวแปร (Variable)
- ตัวแปรประเภท String, Number, Object หรือ
Movie Clip สามารถกำหนดค่าให้ตัวแปรได้โดยตรง
โดยใช้เครื่องหมาย =
- ตัวแปรประเภท Boolean
เก็บค่า 2 ค่า คือ จริง (True) หรือ 1 และเท็จ (False) หรือ 0
เช่น who_turn = new Boolean();
who_turn = new Boolean(True);
ถ้า x เป็นตัวแปร เราสามารถใช้ค่าตัวแปรแทนได้
who_turn = new Boolean(x);
สำหรับ who_turn = new Boolean(x);
โดยที่ x เป็นค่าตัวแปรใด ๆ ผลลัพธ์ที่ได้จะเป็นดังนี้
ถ้า x เป็นตัวเลข กรณี x เป็น 0 ค่า who_turn เป็นเท็จ
กรณีที่เป็นเลขอื่น ๆ ที่ไม่ใช่ 0 ค่า who_turn จะเป็นจริง
ถ้า x เป็น Boolean ค่า who_turn จะเป็นค่าเดียวกับ x
ถ้า x เป็น Object หรือ Movie Clip ค่า who_turn จะเป็น
จริง ยกเว้นถ้าค่า x เป็น Null ค่า who_turn เป็นเท็จ
ถ้า x เป็น String แล้ว ถ้า Number(x) เป็นค่า 0 ค่า
who_turn จะเป็นเท็จ แต่ถ้า Number(x) ไม่ใช่ 0 แล้ว
who_turn จะเป็นจริง
การให้ค่าตัวแปร
- ใช้เครื่องหมาย เท่ากับ
- ใช้คำสั่ง Set เช่น
z = 5;
y = “walk”;
movewalk = 8;
set(“x”, “move”); คือ x = “move”;
set( x+y , 10); คือ movewalk = 10;
ขอบเขตของตัวแปร
โดยปกติตัวแปรที่ประกาศขึ้นมาจะเป็นแบบ Global
สำหรับตัวแปรแบบ Local สามารถประกาศได้โดยใช้คำสั่ง
var นำหน้าตัวแปรที่ต้องการ
เช่น function snow() {
var m;
m = 50;
}
การอ้างถึงตัวแปร
สามารถทำได้หลายวิธี
อ้างโดยใช้ชื่อ เช่น
setProperty(“circle”,_alpha,50);
2. อ้างโดยใช้เครื่องหมาย . (จุดทศนิยม)
circle._alpha = 50;
อ้างโดยตรงจาก root
_root.circle._alpha = 50;
Operator
เครื่องหมายตัวปฏิบัติการมีดังนี้
เครื่องหมาย + เป็นการเพิ่มค่าให้กับตัวแปรที่เป็นชนิดตัวเลข
เช่น ก่อนหน้า x = 4 สั่งคำสั่ง x = x+1;
จะได้ x = 5
และยังรวมกรณีที่ใช้กับตัวแปร string เช่น
x = “We’ re Number” + 1
จะได้ x มีค่าเป็น “We’ re Number 1”
เครื่องหมาย -, *, / ใช้ในการลบ การคูณ และหารทั่ว ๆ ไป
รวมทั้งยังสามารถใช้ร่วมกับเครื่องหมาย = ได้ โดยนำไปไว้
ข้างหน้า จะหมายความว่า ให้คำนวณค่าจากตัวแปรนั้น
เช่น ก่อนหน้า x = 4 สั่งคำสั่ง x += 1;
หมายความว่า x = x+1; จะได้ x = 5
หรือ
x /= y; หมายความว่า
จะได้ x = x/y;
เครื่องหมาย ++ (increment) , -- (decrement)
ใช้ในการเพิ่ม และลดจำนวนลงให้กับตัวแปรนั้นอีก 1
เช่น ก่อนหน้า x = 8 สั่งคำสั่ง x++;
จะได้ x = 9
สั่งคำสั่ง x--;
จะได้ x = 8
หรือ x = 5; y = --x; จะได้ y = 4, x = 4;
หรือ x = 5; y = x--; จะได้ y = 5, x = 4;
หรือ x = 6; y = x++; จะได้ y = 6, x = 7;
เครื่องหมาย % (modulo)
เครื่องหมายนี้จะคล้ายกับการหาร แต่ว่าจะเอาเฉพาะ
เศษ มาเป็นคำตอบ
เช่น 5%3 จะได้ 2
สั่งคำสั่ง x = 7%4;
จะได้ x = 3
หรือ x = 5; x %= 4; จะได้ x = 1;
มีความหมายเช่นเดียวกับ x = x%4;
เครื่องหมาย ! (logical NOT)
ใช้ในการเปลี่ยนค่าจาก จริง (True) เป็นเท็จ (False)
หรือ จากเท็จ (False) เป็นจริง (True)
เช่น y = True;
x = !y;
จะได้ x = False
เงื่อนไขและการเปรียบเทียบ
เงื่อนไขนี้จะอยู่ในส่วนของ Basic Action คือคำสั่ง
If และสามารถใช้งานร่วมกับ Else และ Else If ได้
รูปแบบการใช้งาน
if (เงื่อนไข) {
คำสั่ง.. }
else if (เงื่อนไข) {
คำสั่ง.. }
else { คำสั่ง.. }
เครื่องหมายเปรียบเทียบค่า
equality ใช้ = = หรือ eq
เช่น if ( x = = 5) { x = x+2; }
if ( x eq 5) { x = x+2; }
inequality ใช้ < > หรือ ne
เช่น if ( x < > 5) { x = x-2; }
if ( x ne 5) { x = x-2; }
เครื่องหมายเปรียบเทียบค่า
less than ใช้ < หรือ lt greater than ใช้ > หรือ gt
less or equal ใช้ <= หรือ le greater or equal ใช้ >= หรือ ge
การเปรียบเทียบมากกว่า 1 เงื่อนไข
&& ( and)
(or)
คำสั่งในการทำงานซ้ำ ๆ (Loop)
คำสั่ง for
รูปแบบ for(ค่าเริ่มต้น; เงื่อนไข; ค่าถัดไป) {
คำสั่ง; }
ค่าเริ่มต้น เป็นค่าเริ่มต้นในการทำงาน
เงื่อนไข กำหนดว่าจะออกจากลูปเมื่อเงื่อนไขเป็นเท็จ
เช่น for (x = 0; x < > 10; x++) {
trace(x); }
คำสั่ง do..while
รูปแบบ do {
คำสั่ง;
} while (เงื่อนไข);
เงื่อนไข กำหนดว่าจะออกจากลูปเมื่อเงื่อนไขเป็นเท็จ
เช่น do {
trace(Math.random ());
} while (x++ < > 10);
คำสั่ง while
รูปแบบ while (เงื่อนไข) {
คำสั่ง;
}
เงื่อนไข กำหนดว่าจะวนลูปเมื่อเงื่อนไขยังคงจริง
เช่น while (x++ < 10) {
trace(Math.random ());
}
คำสั่ง continue และ break
รูปแบบ continue;
break;
continue ใช้สำหรับเมื่อต้องการข้ามคำสั่ง ในการวนลูป
แต่ยังคงต้องการให้มีการทำงานในลูปถัดไปอยู่
break ใช้สำหรับ ยกเลิกการวนลูปทั้งหมดหรือออกจากลูป
Comment หรือ //
การทำหมายเหตุ หรือ Comment ใช้สัญลักษณ์ // ซึ่งจะ
ใช้ได้ทั้งกรณีที่เป็นบรรทัดเดียว หรือ เขียนกับคำสั่งอื่นก็ได้
เช่น trace(temp) ; // check temporary variable
delete
คำสั่งนี้ใช้ในการลบตัวแปรที่ไม่ต้องการใช้งานแล้วทิ้งไป
เพื่อคืนหน่วยความจำให้กับระบบ
คำสั่งที่ควรรู้จักในการควบคุมการทำงานระดับเฟรม
คำสั่ง Stop( )
การใช้งาน เมื่อมีการใช้ภาพเคลื่อนไหวต่าง ๆ เวลาแสดงผลจะเริ่มทำ
ทันที ซึ่งถ้าเราต้องการให้รอกรอกข้อความหรือให้มีการดำเนินงานใดเสร็จ
ก่อน หลังจากคลิกเมาส์บนปุ่มจึงเริ่มทำงาน จะต้องอาศัยคำสั่งนี้
รูปแบบคำสั่ง stop( );
คำสั่ง gotoAndPlay( )
การใช้งาน ในกรณีที่ชิ้นงานประกอบด้วย scene มากกว่า 1
ผู้เขียนโปรแกรมสามารถกำหนดให้มีการกระโดดข้ามไปทำงานยัง scene
อื่นในเฟรมที่กำหนด และเมื่อข้ามไปยังปลายทางแล้วให้ทำงานต่อไป
ทันทีได้เลย
รูปแบบคำสั่ง gotoAndPlay(Scene, Frame);
อาร์กิวเมนต์ Scene เป็นชื่อของ Scene ปลายทาง
Frame ระบุเลขเฟรมที่ต้องการของ Scene ปลายทาง
คำสั่ง gotoAndStop( )
การใช้งาน ในกรณีที่ชิ้นงานประกอบด้วย scene มากกว่า 1
ผู้เขียนโปรแกรมสามารถกำหนดให้มีการกระโดดข้ามไปทำงานยัง scene
อื่นในเฟรมที่กำหนด และเมื่อข้ามไปยังปลายทางแล้วให้หยุดทำงาน
ก่อนจะมีคำสั่งให้ทำงานอื่นต่อไป
รูปแบบคำสั่ง gotoAndStop(Scene, Frame);
อาร์กิวเมนต์ Scene เป็นชื่อของ Scene ปลายทาง
Frame ระบุเลขเฟรมที่ต้องการของ Scene ปลายทาง
คำสั่ง getURL( )
การใช้งาน เมื่อต้องการให้มีปุ่มหรือลักษณะของการเชื่อมโยงไปยัง
เว็บไซต์ปลายทาง(การสร้าง link) นั้นสามารถทำได้โดยการใส่คำสั่ง
getURL(); ลงไปในหน้าต่าง Action ให้กับปุ่มที่ต้องการสร้างเป็นจุด
link
รูปแบบคำสั่ง getURL(URL [ ,window [ , variables]] );
อาร์กิวเมนต์ URL เป็นชื่อของเว็บไซต์ปลายทาง
window ระบุลักษณะของการแสดงหน้าเว็บไซต์
variables ค่า Get หรือ Post สำหรับส่งค่าไป
ประมวลผลต่อด้วยโปรแกรมประเภท CGI
คำสั่ง tellTarget( )
การใช้งาน กระโดดข้ามไปทำงานยังจุดมาร์คที่ต้องการหรือเฟรมที่
ต้องการได้
รูปแบบคำสั่ง tellTarget(“target”) {
statements; }
อาร์กิวเมนต์ target ระบุปลายทางของการควบคุมการเคลื่อนไหวได้
อย่างอิสระ
statements ระบุลักษณะการทำงานเมื่อเงื่อนไขเป็นจริง
คำสั่ง ifFrameLoaded( )
การใช้งาน มักจะพบในการเชื่อมต่อ Scene คือให้แสดง Scene แรก ๆ
ก่อน ซึ่งบางทีจะเรียกว่า PreLoading เพื่อรอให้ทุกเฟรมของ Scene ถัดไป
ถูกโหลดส่วนประกอบต่าง ๆ ของมูฟวี่ขึ้นมาครบ แล้วจึงเปลี่ยนไปแสดง
Scene ถัดไปได้
รูปแบบคำสั่ง ifFrameLoaded(scene, Frame) {
statements; }
อาร์กิวเมนต์ scene เป็นชื่อ Scene ถัดไปที่รอให้ถูกโหลดส่วนประกอบ
ต่าง ๆ
Frame ระบุเลขเฟรมที่ต้องการให้โหลดขึ้นมาก่อนเมื่อแสดง
Scene ถัดไป
Statements ระบุลักษณะการทำงานเมื่อเงื่อนไขเป็นจริง
คำสั่ง On (Mouse Event)
การใช้งาน เป็นชุดคำสั่งที่ควบคุมภาพเคลื่อนไหวด้วยลักษณะของ
การเลื่อนเมาส์หรือกดปุ่มบนแป้นคีย์บอร์ด
รูปแบบคำสั่ง on(MouseEvent) {
statements; }
อาร์กิวเมนต์ statements ระบุลักษณะการทำงานเมื่อเงื่อนไขเป็นจริง
MouseEvent ลักษณะการทำงานของเมาส์ซึ่งจะมีผล
ให้เกิดการทำงานในชุด statements
ชุดคำสั่งควบคุมชิ้นงานอิสระ (Stand Alone Object)
ในการสร้างชิ้นงานอิสระนั้นจะสามารถปรับแต่งด้วยชุดคำสั่งสำหรับ
การควบคุมกรอบแสดงภาพเคลื่อนไหวและการควบคุมการซ่อน หรือแสดง
ภาพเคลื่อนไหว รวมถึงการปรับคุณภาพของการแสดงได้ด้วย
คำสั่ง FSCommand( )
การใช้งาน ชุดคำสั่งที่ช่วยให้ทำงานร่วมกับโปรแกรมอื่น ๆ ที่รองรับ
การแสดงด้วย Flash Player หรือโปรแกรมอื่น ๆ ที่สามารถใช้งาน
ActiveX Control ได้
รูปแบบคำสั่ง fscommand(“command”, “parameters”);
อาร์กิวเมนต์ command ระบุคำสั่งของการควบคุมชิ้นงานอิสระ
parameters ค่าของคำสั่งที่ใช้ควบคุมชิ้นงานอิสระ
คำสั่ง toggleHighQuality()
การใช้งาน เป็นการปิดหรือเปิด การปรับขอบของชิ้นงานให้เรียบขึ้น
ด้วย Anti-aliasing
รูปแบบคำสั่ง toggleHighQuality();
คำสั่งต่าง ๆ ในหมวด Action
call
เป็นคำสั่งที่เรียกใช้ Script ที่อยู่ใน Frame อื่นโดยระบุ
หมายเลขของ Frame หรือชื่อของ Frame ที่มี Script ที่
ต้องการใช้งาน เช่น
call(10) ;
คำสั่งนี้เป็นการเรียกใช้ Script ที่เขียนไว้ใน Frame ที่ 10
ทั้งหมด
duplicateMovieClip
เป็นคำสั่งพื้นฐานที่ใช้ในการเพิ่มลูกเล่น โดยจะใช้ในการ
คัดลอก Movie Clip ที่ทำไว้ออกมาใช้งาน
รูปแบบ
duplicateMovieClip(target, newname,depth);
target คือ Movie clip ที่ต้องการคัดลอก
newname คือ Instance name ของ Movie Clip
ตัวใหม่ซึ่งต้องไม่ซ้ำชื่อเดิม
depth คือตำแหน่งความลึกเป็นลำดับชั้นของ Movie
Clip ตัวใหม่
nextScene()
คำสั่งนี้เป็นการสั่งให้ timeline แสดง movie ใน Scene
ถัดไป โดยจะแสดง Frame แรกของ Scene พร้อมกับหยุด
เล่นด้วย ดังนั้นถ้าต้องการให้เล่นต่อไป ต้องสั่ง play() ตาม
อีกครั้ง

nextFrame()
คำสั่งนี้เป็นการสั่งให้ movie clip ที่ต้องการ เล่น Frame
ถัดไปพร้อมทั้งหยุดเล่น
prevScene()
คำสั่งนี้เป็นการสั่งให้ timeline กลับไปแสดงที่ Frame
แรกของ Scene พร้อมกับหยุดเล่นด้วย
prevFrame()
เป็นการสั่งให้ timeline กลับไปแสดงที่ Frame ก่อนหน้า
นี้พร้อมทั้งหยุดเล่น
print(target, ขอบเขตในการพิมพ์)
คำสั่งนี้เป็นการสั่งให้ พิมพ์รูปภาพออกมา แต่ไม่สามารถ
ใช้ได้กับ movie clip ที่ใช้ Effect เช่น alpha
ปกติแล้วจะพิมพ์ movie ที่กำหนดไว้ในขอบเขตทั้งหมดทุก
Frame แต่ก็สามารถระบุขอบเขตการพิมพ์ในแต่ละ frame ได้
เช่น ถ้าต้องการพิมพ์เฉพาะ frame ให้ตั้งชื่อ frame ที่ต้องการ
พิมพ์ว่า #p แล้วเมื่อใช้คำสั่ง print จะมีการพิมพ์เฉพาะ frame
ที่ตั้งชื่อไว้เท่านั้น
หรือ อาจกำหนดขอบเขตของ frame ต่าง ๆ ที่ต้องการพิมพ์
ด้วยการตั้งชื่อว่า #b จากนั้นเวลาเรียกใช้งาน คำสั่ง print ก็ให้
ระบุขอบเขตที่จะพิมพ์ ซึ่งทำได้ 3 แบบคือ
bmovie หมายถึง ขอบเขตที่กำหนดไว้ใน movie clip ที่ระบุไว้
bmax หมายถึง ขอบเขตทั้งหมดที่มีนำมารวมกัน
bframe หมายถึง ขอบเขตที่กำหนดไว้ใน movie clip แต่จะ
ขยาย movie clip ที่จะพิมพ์นี้ให้เต็มขอบเขตและมีขนาดเดียวกัน
ใช้ในกรณีที่ movie clip มีการเปลี่ยนแปลงขนาดในช่วง frame ที่
กำหนด ตัวอย่างคำสั่ง
print(_root.pic2print,”bmovie”);
printAsBitmap และ printAsBitmapNum
ใช้งานคล้ายคำสั่ง print ต่างกันตรงที่จะพยายามพิมพ์ภาพให้
ได้ความละเอียดสูงที่สุด (แต่น้อยกว่าคำสั่ง print)
ใช้สำหรับการพิมพ์ภาพที่ใช้ effect ต่าง ๆ ได้
รูปแบบ printAsBitmap(Location/target,ขอบเขตในการพิมพ์);
removeMovieClip
ทำงานตรงข้ามกับคำสั่ง duplicateMovieClip คือใช้นำ Movie
Clip ที่ต้องการออกจากหน่วยความจำ
รูปแบบ removeMovieClip(target);
startDrag
เป็นคำสั่งที่สั่งให้ movie clip ที่ต้องการเลื่อนไปกับตำแหน่ง
ตัวชี้เมาส์
รูปแบบ startDrag(target, lock(, left, top, right, bottom)));
target หมายถึง movie clip ที่ต้องการเลื่อนไปตามตำแหน่งตัวชี้เมาส์
lock หมายถึงกำหนดให้ศูนย์กลางรูปอยู่ที่เดียวกับตำแหน่งตัวชี้เมาส์
left, top, right, bottom หมายถึงขอบเขตที่ movie clip ตัวนี้สามารถ
เลื่อนตามตำแหน่งตัวชี้เมาส์
stopDrag
ใช้สั่งให้หยุดการลาก movie clip ที่ได้สั่งไปแล้วก่อนหน้านี้ด้วย
คำสั่ง startDrag
รูปแบบ stopDrag();
ทดสอบ โดยสร้าง movie clip ขึ้นมา 1 รูป แล้วใส่ action script ให้
กับ movie clip (Object actions) ดังนี้
onClipEvent (mouseDown) {
startDrag(this,true); } // ลองเปลี่ยน mouseDown เป็น load
onClipEvent (mouseUp) {
stopDrag(); }
stopAllSounds
ใช้สำหรับสั่งให้ flash หยุดการเล่นเสียงทุกอย่างทั้งหมด
รูปแบบ stopAllSounds();
trace
เป็นคำสั่งที่ใช้แสดงผลค่าต่าง ๆ ที่ต้องการตรวจสอบออกมา
ทางหน้าจอ output
รูปแบบ trace(“variable”);
with
ใช้ในการลดรูปของ script ในกรณีที่ต้องอ้างอิง movie clip
หรือ Object ตัวใดตัวหนึ่งหลายคำสั่ง
รูปแบบ with(Object) {
statements;
}
คล้ายกับการอ้างถึงข้อมูลชนิดโครงสร้าง (struct) ในภาษาซี
ตัวอย่างการใช้งาน with ถ้าเราต้องการเขียน Script ดังนี้
_root.mainMv.player.play();
_root.mainMv.player.mm = 7;
_root.mainMv.player.mo = 8;
_root.mainMv.player._visible = true;
ถ้าใช้ with เข้ามาช่วย with(_root.mainMv.player){
play();
mm = 7;
mo = 8;
_visible = true; }
คุณสมบัติ (Property) ต่าง ๆ ที่ใช้ใน flash
การกำหนดค่า property ด้วย action script ทำได้ 2 แบบคือ
คำสั่ง setProperty(target,property,value);
target.Property = value;
การเรียกดูค่า Property ทำได้ 2 แบบ คือ
คำสั่ง getProperty(target,property);
2. คำสั่ง trace(target.Property);
Property ต่าง ๆ
_alpha
เป็นการกำหนดค่าความโปร่งใสของ movie clip ค่าที่กำหนด
จะอยู่ในช่วง 0-100 โดยมีหน่วยเป็นเปอร์เซ็นต์
_currentframe
Property นี้เป็นชนิดอ่านอย่างเดียว คือไม่สามารถกำหนดค่า
ได้ ใช้สำหรับกรณีที่ต้องการทราบว่า Frame ปัจจุบันที่กำลังแสดง
อยู่นั้นเป็น Frame ที่เท่าไร
_droptarget
Property นี้เป็นชนิดอ่านอย่างเดียว ใช้สำหรับเวลาที่ต้องการ
ตรวจสอบกรณีที่เราลาก movie clip ไปแล้วต้องการทราบว่าเรา
ปล่อย movie clip นี้ไว้บน movie clip ชื่ออะไร โดยจะคืนค่าออกมา
จากการอ้างอิงในลักษณะลำดับชั้น
_framesloaded
Property นี้เป็นชนิดอ่านอย่างเดียว ใช้สำหรับตรวจสอบโดย
จะส่งค่ามา เป็นหมายเลขของ Frame ล่าสุดที่ได้โหลดมาจากการ
โหลดแบบ streaming
_ framesloaded Property นี้มักจะใช้ในกรณีที่ต้องโหลด
ไฟล์ movie ขนาดใหญ่ ที่ต้องใช้เวลาโหลดนาน ซึ่งเรามักจะแสดง
หน้า preview ให้ดูก่อนที่จะแสดงหน้าจริงหรือแสดงแถบแสดง
สถานะการโหลด โดยใช้การตรวจสอบค่าจาก Property นี้
Property นี้มักจะใช้ร่วมกับ Property อีกอันหนึ่งคือ
_totalframes
_totalframes
Property นี้เป็นชนิดอ่านอย่างเดียว ซึ่งจะคืนค่าออกมาเป็น
จำนวน frame ทั้งหมดที่ movie นี้ใช้ โดยส่วนมากแล้วจะใช้ในกรณี
ที่ต้องการ Load Movie ขนาดใหญ่ ๆ เพื่อที่จะแสดงให้ผู้ใช้ทราบ
เปอร์เซ็นต์การโหลดก่อนการแสดงไฟล์ Movie โดยจะใช้ร่วมกับ
Property _framesloaded
ตัวอย่างการใช้งาน
trace(“จำนวน Frames ทั้งหมดที่ใช้ใน Movie นี้มีทั้งสิ้น ”
+ _totalframes);
_height
เป็นการกำหนดความสูงของ movie clip
_width
เป็นการกำหนดความกว้างของ movie clip
_name
เป็นการกำหนด Instance Name ของ movie clip
boy._name = “girl”;
_rotation
เป็นการกำหนดมุมในหน่วยองศาเพื่อหมุน movie clip
_visible
เป็นการกำหนดการมองเห็นของ movie clip
_x
เป็นการเก็บค่าตำแหน่งพิกัด x ของ movie clip และกำหนดได้
_y
เป็นการเก็บค่าตำแหน่งพิกัด y ของ movie clip และกำหนดได้
_xmouse
เป็นแบบอ่านอย่างเดียว จะคืนค่าตำแหน่งพิกัด x ของเมาส์
ณ ขณะเรียกใช้งานมาเทียบกับ movie clip
_ymouse
เช่นเดียวกับ _xmouse แต่เป็นตำแหน่งพิกัด y
_xscale
เป็นการกำหนดค่าอัตราส่วนในแกน x ของ movie clip จาก
ขนาดปกติว่าจะขยายหรือย่อ จากเดิมกี่เปอร์เซ็นต์
_yscale
เช่นเดียวกับ _xscale
ฟังก์ชัน (Function)
รูปแบบของฟังก์ชันใน flash
function ชื่อของฟังก์ชัน(พารามิเตอร์1,พารามิเตอร์2,...)
{
return ค่าที่ส่งกลับ
}
ฟังก์ชันที่มีอยู่แล้วใน flash
Boolean เปลี่ยนค่าที่ส่งให้เป็นข้อมูลชนิด Boolean
getProperty เป็นการดึงค่า Property ของ movie clip
getTimer นำค่าเวลาในหน่วย millisecond แสดงว่า movie clip นั้นถูกเปิดมานานเท่าไร
int ปรับค่าตัวเลขที่ส่งมาให้เป็นค่าจำนวนเต็ม
isFinite ใช้ตรวจสอบตัวเลขที่ไม่เป็นค่าอนันต์(infinite) ถ้าเป็นค่าอนันต์จริง จะส่งค่าเป็นเท็จ
newline ใช้สำหรับการขึ้นบรรทัดใหม่
Number ใช้เพื่อระบุว่าข้อมูลนั้นเป็นตัวเลข
parseFloat เปลี่ยนข้อความเป็นตัวเลข ซึ่งถ้าเปลี่ยนไม่ได้จะ
ส่งค่า NaN(Not a Number) หรือ 0 ออกมา
parseInt เปลี่ยนข้อความเป็นตัวเลขจำนวนเต็ม และสามารถ
หาค่าจากเลขฐานได้ ถ้าไม่กำหนดคือฐาน 10
ถ้าเลขขึ้นต้นด้วย 0 คือเลขฐาน 8 ขึ้นต้นด้วย 0x คือ ฐาน 16
เช่น parseInt(“ข้อความที่ต้องการ”,ฐาน);
trace(parseInt(“555.55”)); 555
trace(parseInt(“am900”)); NaN
trace(parseInt(“0123”)); 83
trace(parseInt(“0x123”)); 291
trace(parseInt(“10110”,2)); 44
random จะสุ่มตัวเลขขึ้นมาในช่วง 0 ถึง m
scroll ใช้ร่วมกับ Text Field เพื่อกำหนดหมายเลขของบรรทัดบนสุดที่สามารถมองเห็นได้
String สำหรับเปลี่ยนตัวเลขหรือข้อความให้เป็น string ถ้าเป็น boolean ก็จะเป็น true หรือ false
targetpath ใช้หาตำแหน่งของ movie clip ที่ต้องการ
ฟังก์ชันที่เกี่ยวกับตัวอักษร ควรเรียกผ่าน Object String
chr เปลี่ยนค่ารหัสตัวอักษร ASCII เป็นตัวอักษร
length ใช้สำหรับการหาความยาวของข้อความที่ต้องการ
mbchr เหมือน chr แต่เปลี่ยนในลักษณะ Multi Byte
mblength เหมือน length โดยหาความยาวของตัวเลขทั้งหมด
mbord เปลี่ยนตัวอักษรเป็นค่า Multi Byte
mbsubstring ใช้ในการแยกตัวอักษร หรือข้อความโดยระบุ
ตำแหน่งที่ต้องการ
ord ใช้ในการเปลี่ยนตัวอักษรที่ต้องการเปลี่ยนเป็นรหัส ASCII
substring ใช้ในการแยกตัวอักษรโดยระบุตำแหน่งที่ต้องการ
Object Oriented Programming
การสร้าง Object ทำได้ 2 แบบคือ
1. สร้างด้วยการประกาศเป็น Object
2. สร้างโดยใช้ Function Constructor
การสร้างด้วยการประกาศเป็น Object
เป็นวิธีที่ง่ายที่สุด และนิยมใช้ในกรณีที่ต้องการส่งค่าให้กับ
คำสั่งต่าง ๆ ที่ต้องการตัวแปรประเภท Object เพื่อรับค่า
Point = new Object;
Point.x = 50;
Point.y = 70;
การสร้าง Function Constructor
เป็นการสร้าง object แบบหนึ่ง โดย Function Constructor นี้
เปรียบเหมือน class ซึ่งการสร้าง Object ใหม่ นี้ทำได้โดยการ
เรียก function พร้อมกับคำสั่ง New
function rigid(h,w){
this.width = w;
this.height = h; }
เมื่อจะสร้าง Object ทำได้ดังนี้
myobject = new rigid(5,7);
myrigid = new rigid(10,25);
การสร้างคำสั่งให้กับ Class
ทำได้ 2 แบบคือ
1. ใช้คุณสมบัติ prototype เป็นตัวกำหนด
2. กำหนดภายใน Function Constructor
กำหนดโดยใช้คุณสมบัติ prototype
function rigid(h,w) {
this.width = w;
this.height = h; }
rigid.prototype.show = function (){ trace(“This is Show
Method”)};
กำหนดภายใน Function Constructor
function rigid(h,w) {
this.width = w;
this.height = h;
this.show = function (){ trace(“This is Show
Method”)};
}
Class ต่าง ๆ ที่มีใน flash
Class Array ประกาศดังนี้
Yourvariable = new Array();
for(x=0;x<=10;x++) {
Yourvariable(x) = x*2;
}
Myarray = new Array(0,2,4,6,8,10,12,16);
Namearray = new Array(“John”, “Jame”, “Tom”);
ฟังก์ชันสำหรับ Class Array
join เปลี่ยนเครื่องหมาย , ที่คั่นข้อมูลเป็นตัวที่กำหนด
length ใช้บอกจำนวนของข้อมูลใน array มีค่าคือ index+1
pop เป็นการนำค่าที่เข้าไปใส่ใน array ค่าสุดท้ายออกมา
push นำค่าที่ต้องการไปใส่ไว้ในลำดับสุดท้ายของ array
reverse ทำให้ค่าใน array นั้นเรียงลำดับกลับกัน
shift ใช้ในการนำข้อมูลใน array ออกในลักษณะของคิว
slice ใช้ในการตัดค่าใน array ที่ไม่ต้องการออกไป โดยกำหนด
ช่วงของ index เป็น start และ end
sort ใช้ในเรียงลำดับของข้อมูลใน array (น้อยไปมาก)
Class Boolean ประกาศดังนี้
Mykey = new Boolean();
ฟังก์ชันต่าง ๆ สำหรับ Class Boolean
toString เปลี่ยนค่า Boolean เป็นข้อความ
valueOf เป็นคำสั่งที่ส่งค่า Boolean นั้นกลับมา
Class Color ประกาศดังนี้
M = new Color(mvColor);
mvColor คือ ชื่อของ movie clip ที่ต้องการเปลี่ยนสี
ฟังก์ชันต่าง ๆ สำหรับ Class Color
setRGB เป็นการสั่งเปลี่ยนสีของ movie clip
setRGB(0xRRGGBB);
getRGB เป็นคำสั่งที่ส่งค่าสีที่ได้กำหนดจากคำสั่ง setRGB
คืนมา
setTransform เปลี่ยนค่าสีของ movie clip เป็นบางส่วน
Class Date ประกาศดังนี้
MyDate = new Date();
ฟังก์ชันต่าง ๆ สำหรับ Class Date
getDate เรียกดูวันที่ปัจจุบันของเครื่อง client
getDay เรียกดูวันของเครื่อง client จะส่งค่ากลับมาเป็น 0-6
getFullYear เรียกดูปี ค.ศ. ของเครื่อง client
getHours เรียกดูชั่วโมงปัจจุบัน ค่าอยู่ในช่วง 0-23
getMinutes เรียกดูเวลาในหน่วยนาที มีค่า 0-59
getMonth เรียกดูเดือนของเครื่อง มีค่าเป็น 0-11
getYear เรียกดูปี ค.ศ. โดยหักจาก 1990
Class Key เป็น class ในระดับสูง สามารถเรียกใช้งานได้ โดย
ไม่ต้องสร้าง instance ของ class
ค่าที่ได้รับจากการกดปุ่ม
ค่ารหัส Ascii เป็นค่าประจำตัวอักษรแต่ละตัวที่จะส่งมา
เมื่อมีการกดปุ่มบน keyboard
ค่า Key Code เป็นค่าประจำปุ่มแต่ละปุ่มบน keyboard
เช่น A, a, ฟ, ฤ ตัวอักษรทั้งสี่ตัวนี้อยู่ในปุ่มเดียวกัน จะส่ง
ค่า Key Code ออกมาเป็นค่าเดียวกัน
ฟังก์ชันต่าง ๆ สำหรับ Class Key
getAscii รับค่ารหัส Ascii จากการกดหรือปล่อย keyboard
getCode รับค่า Key Code
isDown เป็นการตรวจสอบว่ามีการกดปุ่ม keyboard ที่
กำหนดให้หรือไม่
isToggled ใช้ตรวจสอบสถานะของปุ่มว่ามีการใช้งาน
Caps Lock หรือ Num Lock อยู่หรือไม่
Class Math เป็น Class ระดับสูง
ฟังก์ชันต่าง ๆ สำหรับ Class Math
abs ส่งค่า absolute กลับคืนมา
acos ส่งค่า arc cosine กลับคืนมาในหน่วยของ radian
asin ส่งค่า arc sine กลับคืนมาในหน่วยของ radian
atan ส่งค่า arc tangent กลับคืนมาในหน่วยของ radian ใน
ช่วงของ –PI/2 ถึง PI/2 (ไม่ครบรอบของวงกลม)
ceil เปลี่ยนตัวเลข หรือค่าที่กำหนด ให้มาเป็นตัวเลขจำนวน
เต็มที่ปัดเศษขึ้น เช่น 7.1 จะได้เป็น 8
floor เปลี่ยนค่าตัวเลขที่ให้มาเป็นค่าจำนวนเต็มที่ปัดเศษลง
exp เปลี่ยนค่าที่ให้เป็นค่า exponent หรือ e ยกกำลัง
PI จะเก็บค่า PI ซึ่งเป็นค่าประมาณ 3.14159
log ใช้ในการคำนวณค่า logarithm ฐาน e
random ทำการสุ่มตัวเลขตั้งแต่ 0.0 ถึง 1.0 กลับมา
round เปลี่ยนตัวเลขทศนิยมให้เป็นจำนวนเต็ม โดยจะปัด
เศษขึ้นหรือลงขึ้นกับว่า ค่าของเศษส่วนใกล้เคียงกับ
ค่าใดมากกว่ากัน
sqrt ใช้คำนวณหาค่ารากที่สอง
การปรับแต่งเสียงของ flash
มี 2 แบบ คือ
การปรับแต่งเสียงด้วยพาเนล sound โดยในส่วนของพาเนลนี้
จะมี option ต่าง ๆ ซึ่งมีความหมายดังต่อไปนี้
Effect ใช้สำหรับใส่ effect รูปแบบต่าง ๆ ให้เสียง
Sync ใช้สำหรับกำหนดวิธีเล่นเสียงในมูฟวี่
Loops ใช้เมื่อต้องการเล่นเสียงอย่างต่อเนื่อง
การปรับแต่ง effect เสียงเอง โดยการใช้ไดอะล็อกบ็อกซ์ Edit
Envelope ซึ่งจะแสดงแถบสัญญาณเสียงออกมาเป็นรูปคลื่น พร้อม
ทั้งมีตัวควบคุมสำหรับใช้กำหนดจุดเริ่มต้นและจุดสิ้นสุดของเสียง
รวมทั้งมีปุ่ม envelope เพื่อใช้ควบคุมระดับความดังของเสียงที่
เล่นในแต่ละช่วง
การนำเสนอผลงานบนเว็บเพจ
ขั้นตอนการแปลงไฟล์นี้เรียกว่า publish
นอกจากนั้น ยังสามารถ export มูฟวี่ออกไปในรูปของไฟล์รูปภาพ
GIF, JPEG รวมทั้งไฟล์วิดีโอ QuickTime, AVI ฯลฯ
การนำไฟล์ .swf ไปเสนอบนเว็บเพจทำได้ 3 วิธีคือ
1. เขียนแท็ก OBJECT หรือ EMBED พร้อมค่าต่างๆ เพื่อจัดวาง
ไฟล์ .swf ไว้ในเว็บเพจเอง
2. ใช้โปรแกรม flash สร้างแท็กสำเร็จรูป
3. ใช้โปรแกรม dreamweaver ในการสร้างเว็บเพจ

11/21/2551

รับทำเว็บไซต์, Web Animation

ราคาถูก สามารถต่อรองกันได้

สนใจติดต่อ : 084-434-3191

นานาสาระ