Page 59 - การโปรแกรมคอมพิวเตอร์ขั้นสูง
P. 59
การเขียนโปรแกรมจาวาแอพเพล็ต 12-49
ตาราง (ตอ่ )
SoundApplet1.java
16 }
17 public boolean action(Event evt, Object arg)
18 {
19 if (evt.target instanceof Button)
20 {
21 URL codeBase = getCodeBase();
22 play(codeBase, "spacemusic.wav");
23 }
24 return true;
25 }
26 }
คำ�อธบิ ายโปรแกรม
บรรทัดท ี่ 1 นำ�เข้าแ พ็กเกจ java.awt.* เพื่อใช้งานท ุกค ลาสของแพ็กเกจ AWT
บรรทัดที่ 2 นำ�เข้าแ พ็กเกจ java.applet.* เพื่อใช้ง านทุกค ลาสของแ พ็กเกจ applet
บรรทัดที่ 3 นำ�เข้าแพ็กเกจ java.net.* เพื่อใช้งานทุกค ลาสของแ พ็กเกจ net
บรรทัดที่ 4-26 สร้างค ลาสชื่อ SoundApplet1 ซึ่งจ ะส ืบทอดค ุณลักษณะจ ากค ลาส Applet
บรรทัดท ี่ 6 ประกาศค ่าออบเจ็กต์ช ื่อ button ของค ลาส Button
บรรทัดที่ 7-16 ก �ำ หนดเมธอด init() ซึง่ ถ กู เรยี กใชง้ านโดยเบร าวเ์ ซอร์ เมือ่ เวบ็ เพจท มี่ แี อพเพลต็ ถ กู เรยี กใช้
บรรทัดที่ 9-10 สร้างและกำ�หนดตัวจัดการเลย์เอ้าต์ชื่อ layout ชนิด BorderLayout โดยใช้เมธอด
setLayout
บรรทัดที่ 11-12 สร้างและก ำ�หนดอ อบเจ็กต์ตัวอักษรช ื่อ font โดยใช้เมธอด setFont
บรรทัดท ี่ 13-14 สร้างและเพิ่มปุ่ม โดยบ นปุ่มจ ะปรากฏข ้อความ "Play Sound"
บรรทัดท ี่ 15 กำ�หนดขนาดแ อพเพล็ต โดยใช้เมธอด resize (250, 250) คือ กว้าง 250 พิกเซล สูง 250
พิกเซล
บรรทัดท ี่ 17-25 กำ�หนดเมธอด action(Event evt, Object arg)
บรรทัดที่ 19-23 ถ้าผู้ใช้คลิกปุ่ม จะประกาศค่า URL ออบเจ็กต์ชื่อ codeBase และกำ�หนดค่าได้จาก
เมธอด getCodeBase() และก ำ�หนดเมธอด play() เพื่อเล่นค ลิปเสียงไฟล์ spacemusic.
wav จากต ำ�แหน่งท ี่อยู่ท ี่รับค่าจาก URL ออบเจ็กต์ช ื่อ codebase
บรรทัดที่ 24 ส่งคืนค ่า true เพื่อบอกให้โปรแกรมร ับร ู้ถึงเหตุการณ์