Would you like to react to this message? Create an account in a few clicks or log in to continue.

สรุป applet อีกแหล่ง

Go down

สรุป applet อีกแหล่ง Empty สรุป applet อีกแหล่ง

เธ•เธฑเน‰เธ‡เธซเธฑเธงเธ‚เน‰เธญ  Admin Tue May 27, 2008 12:06 pm

Java Applet นั้นเป็นออบเจ็กต์ที่สร้างมาจากคลาส java.applet.Applet
หรือเรียกได้ว่าเป็นคลาสย่อยของมันอีกที โดยตัวคลาส Applet
เองนั้นแท้ที่จริงมีหน้าที่เพียงแค่ใช้ในการสร้างคลาสย่อย
หรือออบเจ็กต์ขึ้นมาไม่ได้ทำอะไรมากกว่านั้น ดีงนืนมันจงเป็นเพียงแค่พื้นที่ว่าง ๆ
บนหน้าจอที่ไม่มีการตอบสนองใด ๆ
การจะสร้าง Applet ที่มีประโยชน์ขึ้นมานั้น
โปรแกรมเมอร์จะตอ้งเพิ่มเติมคลาสย่อยซึ่งขยายมาจากคลาส Applet มีรูปแบบคือ


public class YourApplet extends java.applet.Appplet{
//ส่วนของโปรแกรม การทำงาน Applet
}


หลังจากที่เพิ่มคลาสย่อยเข้าไปในคลาสที่สร้างจาก Applet แล้ว
เราจะได้เมธอดต่าง ๆ ที่ถูกกำหนดไว้ในคลาส Applet
ตามกฎการถ่ายทอดโดยจะมีบางเมธอดที่เราสามารถใส่คำสั่งต่าง ๆ ลงไป
ขณะที่บางเมธอดเราก็ไม่ได้ทำอะไรกับมันเลย
เนื่องจาก Applet นั้นไม่ได้เป็นโปรแกรมชนิด stand-alone
หรือประมวลผลได้อิสระ เพราะฉะนั้นจึงมีความแตกต่างบ้าง
แต่ก็ยังคงใช้หลักการเดียวกันกับ Application
Applet นั้นมีเมธอดอยู่หลายเมธอดที่ทำหน้าที่เหมือนกับ main()
ซึ่งเมธอดที่ว่า ได้แก่

เมธอด paint()
เป็นหนึ่งในเมธอดที่ถูกกำหนดในคลาส Applet
แต่ไม่ได้ทำอะไรเลย มีไว้สำหรับเมื่อต้องการให้ Applet
แสดงอะไรขึ้นมาบนหน้าจอไม่ว่าจะเป็นข้อความ รูปภาพ รูปทรงต่าง ๆ
หรืออะไรก็แล้วแต่ โดยสามารถเกดขึ้นกี่ครั้งก็ได้ตลอดช่วงชีวิตของ Applet
(applet life cycle)
เมธอด paint() นี้จะต้องถูกเขียนใหม่ลงไปที่ส่วนของคลาสย่อย Applet
ที่สร้างขึ้นเพื่อให้มีอะไรแสดงไปที่หน้าจอ โดยมีรูปแบบดังนี้


public void pain(Graphics g) {
//โปรแกรม สิ่งที่จะวาดลงไปบน Applet
}


พารามิเตอร์ “g” ที่มีชนิดเป็นคลาส Graphics จะถูกกำหนดโดยระบบที่เรียกใช้
Applet ซึ่งสำหรับการวาดรูป หรือทำกราฟิกต่าง ๆ บนจาวาส่วนใหญ่ จะถูกทำโดยคลาส
Graphics กล่าวได้อีกนัยหนึ่งก็คือ เมธอด paint() ที่กำหนดใน Applet นี้
ไม่ได้ทำการวาดรูปใดๆ บน Applet เลย ไม่ว่าจะเป็นกล่องข้อความ หรือรูปทรงตาง ๆ
แต่ออบเจ็กต์เหล่านั้นทำการวาดตัวมันเองด้วยการใช้เมธอด paint()
ของมันเองต่างหาก
เมธอด init()
ปกติแล้วในการสร้างออบเจ็กต์ทั่วไป
Constructor จะรับผิดชอบในการกำหนดค่าเริ่มต้นหรือทำการ Initialize
ให้กับออบเจ็กต์นั้น ๆ เสมอ แต่กับ Applet แล้ว สิ่งที่จะทำการ Initialize
Applet กลับไม่ใช่ Constructor แต่เป็นเมธอดที่ชื่อว่า init()
เป็นเมธอดที่จะถูกอ่านโดยระบบเมื่อ Applet ใดๆ ถูกสร้างขึ้น เช่น
ต้องการกำหนดสีที่พื้นหลัง ชนิดของฟอนต์ที่ถูกใช้ข้อความในขณะที่ Applet กำลัง
paint หรือการสร้างปุ่มขึ้นมาบน Applet โดยมีรูปแบบการใช้ดังนี้

public void init() {
// ส่วนของโปรแกรมที่ถูกทำเมื่อ Applet ถูก load ในตอนแรก
}


เมธอด start()
ปกติแล้ว Applet
จะเริ่มทำงานหลังจากที่การกำหนดค่าเริ่มต้น แต่การเริ่มของ Applet
นั้นสามารถเกิดขึ้นำด้อีกในกรณีที่ก่อนหน้านี้มันถูกบังคับให้หยุด
หรือผู้ใช้กดลิงค์ทำให้หน้าจอปัจจุบันถูกเปลี่ยนจากการรัน Applet
ไปเป็นอย่างอื่น นั่นหมายความว่า เมื่อผู้ใช้กลับมาหน้า Applet อีกครั้ง
มันก็จะเริ่มทำงานใหม่อีกครั้งหรือถูก start ขึ้นใหม่นั่นเอง
(แสดงให้เห็นว่าการเริ่ม Applet
สามารถเกอดขันได้มากกว่าหนึ่งครั้งในช่วงชีวิตของ Applet ) การเขียนทับเมธอด
start() ทำได้ดังนี้ปกติแล้ว Applet
จะเริ่มทำงานหลังจากที่การกำหนดค่าเริ่มต้น แต่การเริ่มของ Applet
นั้นสามารถเกิดขึ้นำด้อีกในกรณีที่ก่อนหน้านี้มันถูกบังคับให้หยุด
หรือผู้ใช้กดลิงค์ทำให้หน้าจอปัจจุบันถูกเปลี่ยนจากการรัน Applet
ไปเป็นอย่างอื่น นั่นหมายความว่า เมื่อผู้ใช้กลับมาหน้า Applet อีกครั้ง
มันก็จะเริ่มทำงานใหม่อีกครั้งหรือถูก start ขึ้นใหม่นั่นเอง
(แสดงให้เห็นว่าการเริ่ม Applet
สามารถเกอดขันได้มากกว่าหนึ่งครั้งในช่วงชีวิตของ Applet ) การเขียนทับเมธอด
start() ทำได้ดังนี้
public class YourApplet extends Applet {
public void start() {
}
}


กระบวนการที่จะใส่ไว้ที่เมธอด start() นี้อาจจะเป็นการส่งข้อความบางอย่าง
เพื่อบอกว่า Applet นี้ยังคงทำงานอยู่
ถ้าไม่จำเป็นต้องทำก็อาจจะไม่ต้องเขียนลงไปก็ได้




เมธอด stop()
การหยุดของ Applet หมายถึง
การที่ผู้ใช้ออกจากหน้าจอปัจจุบันที่กำลังรัน Applet อยู่นั้น หรือการที่
Applet อยู่ตัวมันเองด้วยการเรียกเมธอด stop() โดยตรงมีรูปแบบการใช้ดังนี้

public class YourApplet extends Applet {
public void stop() {
}
}



เมธอด destroy()
เป็นการบอกให้ Applet
ทำการล้างหน่วยความจำต่าง ๆ
ให้เป็นเหมือนก่อนที่มันจะใช้เมื่อทากรปิดบราวเซอร์หรือใช้ทำลายเธรดต่าง ๆ
ที่ยังคงทำงานค้างอยู่
ซึ่งโดยทั่วไปการเขียนโปรแกรมในส่วนนี้อาจจะไม่มีความจำเป็นมาก
นอกเสียจากจะต้องการปลดปล่อยทรัพยากรที่มีจำกัด

public class YourApplet extends Applet {
public void destroy () {
}
}


copy มาจาก http://www.nstlearning.com/~km/?p=4155
Admin
Admin
Admin

เธˆเธณเธ™เธงเธ™เธ‚เน‰เธญเธ„เธงเธฒเธก : 112
Registration date : 18/05/2008

http://chawban.chocoforum.com

เธ‚เธถเน‰เธ™เน„เธ›เธ‚เน‰เธฒเธ‡เธšเธ™ Go down

สรุป applet อีกแหล่ง Empty Re: สรุป applet อีกแหล่ง

เธ•เธฑเน‰เธ‡เธซเธฑเธงเธ‚เน‰เธญ  Admin Tue May 27, 2008 12:11 pm

Admin
Admin
Admin

เธˆเธณเธ™เธงเธ™เธ‚เน‰เธญเธ„เธงเธฒเธก : 112
Registration date : 18/05/2008

http://chawban.chocoforum.com

เธ‚เธถเน‰เธ™เน„เธ›เธ‚เน‰เธฒเธ‡เธšเธ™ Go down

เธ‚เธถเน‰เธ™เน„เธ›เธ‚เน‰เธฒเธ‡เธšเธ™

- Similar topics

 
Permissions in this forum:
เธ„เธธเธ“เน„เธกเนˆเธชเธฒเธกเธฒเธฃเธ–เธžเธดเธกเธžเนŒเธ•เธญเธš