Download - JENI Applet
DIK-020 Pemograman Berorientasi Objek (semester genap 2009/2010) 5/26/2010
www.math-usk.org/zahnur 1
JAVA Education Network Indonesia
jeni.jardiknas.org
AppletPengenalan Pemrograman 2
Topik
• Definisi Applet
• Membuat Applet
• Method Applet
– Life Cycle Applet
– Method paint
– Method showStatus
– Memainkan Audio Clip
• Tag Applet HTML
Applet
• Jenis spesial dari program Java yang dieksekusi via internet
• Secara fisik berjalan pada web browser
• Tidak diijinkan mengakses komputer yang digunakan untuk alasan keamanan
• Class Applet
– Subclass dari class Panel yang didefinisikan di AWT
Hello World Applet
1 //simpan di AppletDemo.java
2 import java.awt.*;
3 import java.applet.*;
4 /* masukkan bagian ini pada code HTML
5 <applet code="AppletDemo" width=300 height=100>
6 </applet>
7 */
8 public class AppletDemo extends Applet {
9 public void paint(Graphics g) {
10 g.drawString("Hello world!", 80,
25);
11 }
12 }
Menjalankan Applet
• Di-compile secara normal tapi tidak dieksekusi menggunakan perintah Java
– Berjalan pada web browser
– Berjalan menggunakan applet viewer
• Membuka Applet melalui web browser
– Buka dokumen HTML dimana Applet disisipkan menggunakan tag Applet HTML
• Membuka Applet melalui perintah appletviewer
appletviewer <java filename>
Hello World Applet
• Contoh menjalankan Applet :
appletviewer AppletDemo.java
• Applet dibuat dengan lebar 300 pixels dan tinggi 100 pixels
<applet code="AppletDemo" width=300
height=100>
</applet>
• Method drawString menggambar string “Hello world” pada posisi pixel(80,25)
g.drawString("Hello world!", 80, 25);
DIK-020 Pemograman Berorientasi Objek (semester genap 2009/2010) 5/26/2010
www.math-usk.org/zahnur 2
Hello World Applet
• Hasil dari contoh :
Membuat Applet
• Meng-extends class Applet
• Meng-import package java.applet
– Class Applet ditemukan di package java.applet
• Meng-import package java.awt
– Class Applet adalah subclass dari class Panel
– Beberapa method dan field dari class Applet ditemukan di class Panel
– Class parent ditemukan di package java.awt
Life Cycle Applet
• Tidak memiliki method main
• Browser atau applet viewer berinteraksi dengan applet melalui method berikut ini :
1.init()
2.start()
3.stop()
4.destroy()
• Beberapa method ini di-override ketika membuat applets
Life Cycle Applet
• Detail dari method life cycle applet
– init()
• Method pertama yang dipanggil ketika applet di-load
– start()
• Method berikutnya yang dipanggil setelah init
• Di-invoke setiap dokumen applet HTML dan applet itu sendiri ditampilkan
– stop()
• Dipanggil ketika web browser meninggalkan dokumen applet HTML
• Menginformasikan applet bahwa eksekusinya berhenti
– destroy()
• Dipanggil ketika applet perlu dihapus bersih dari memory
• Method stop selalu dipanggil sebelum method ini di-invoke
Life Cycle Applet
1 import java.applet.*;
2 import java.awt.*;
3 /*
4 <applet code="LifeCycleDemo" width=300 height=100>
5 </applet>
6 */
7 class LifeCycleDemo extends Applet {
8 String msg ="";
9 public void init() {
10 msg += "initializing... ";
11 repaint();
12 }
13 //bersambung...
Applet Life Cycle
14 public void start() {
15 msg += "starting... ";
16 repaint();
17 }
18 public void stop() {
19 msg += "stopping... ";
20 repaint();
21 }
22 public void destroy() {
23 msg += "preparing for unloading...";
24 repaint();
25 }
26 //bersambung...
DIK-020 Pemograman Berorientasi Objek (semester genap 2009/2010) 5/26/2010
www.math-usk.org/zahnur 3
Applet Life Cycle
27 public void paint(Graphics g) {
28 g.drawString(msg, 15, 15);
29 }
30 }
• Contoh dokumen HTML dengan disisipi applet
1 <HTML>
2 <TITLE>Life Cycle Demo</TITLE>
3 <applet code="LifeCycleDemo" width=300
4
height=100>
5 </applet>
6 </HTML>
Method paint
• Method penting yang diwariskan dari class parent Applet component
• Dipanggil setiap hasil applet perlu digambar
– Contoh : sebuah applet disembunyikan oleh window lainnya dan kemudian membuatnya tampak kembali.
• Biasanya di-override untuk menyesuaikan tampilan applet Anda
– Contoh Hello World
Method showStatus
• Sebuah applet memiliki status window
– Menginformasikan kepada Anda apa yang applet kerjakan saat ini
• Jika Anda ingin menampilkan status window
– Meng-invoke method showStatus dan melewatkan sebuah argumen String
Method showStatus
1 import java.awt.*;
2 import java.applet.*;
3 /*
4 <applet code="AppletDemo" width=300 height=100>
5 </applet>
6 */
7 public class AppletDemo extends Applet {
8 public void paint(Graphics g) {
9 g.drawString("Hello world!", 80, 25);
10 showStatus("This is an important information.");
11 }
12 }
Method showStatus
• Contoh hasil :
Memainkan Audio Clips
• Applet juga mengijinkan Anda untuk memainkan data audio
• Tahap-tahap dalam memainkan audio clip dalam applet:
1.Dapatkan the audio clip • Menggunakan method getAudioClip
2.Memainkan audio clip• Menggunakan method play pada object audio clip
• Atau menggunakan method loop pada object audio clip
DIK-020 Pemograman Berorientasi Objek (semester genap 2009/2010) 5/26/2010
www.math-usk.org/zahnur 4
Memainkan Audio Clips
• Perbedaan antara play dan loop:
– Method play• Memainkan audio clip hanya sekali
– Method loop• Memutar audio clip hingga method stop dipanggil
Memainkan Audio Clips
1 import java.awt.*;
2 import java.applet.*;
3 /*
4 <applet code="AudioApplet"
width=300 height=100>
5 </applet>
6 */
7 public class AudioApplet extends
Applet {
8 AudioClip ac;
9 //bersambung
Memainkan Audio Clips10 public void init() {
11 try {
12 /* audio clip disimpan di direktori
yang sama
13 dengan kode java */
14 /* spaceMusic- download dari java.sun.com */
15 ac = getAudioClip(getCodeBase(),
16 "spaceMusic.au");
17 ac.loop();
18 } catch (Exception e) {
19 System.out.println(e);
20 }
21 }
22 //bersambung...
Memainkan Audio Clips
23 public void stop() {
24 ac.stop();
25 }
26 public void paint(Graphics g) {
27 g.drawString("Playing space
music!", 80, 25);
28 }
29}
Tag Applet HTML
<APPLET
[CODEBASE = codebaseURL]
CODE = appletFile
[ATL = alternateText]
[NAME = appletInstanceName]
WIDTH = widthInPixels HEIGHT =
heightInPixels
[ALIGN = alignment]
[VSPACE = vspaceInPixels] [HSPACE
= hspaceInPixels]
>
<!-- bersambung -->
Tag Applet HTML
[<PARAM NAME = parameterName1 VALUE =
parameterValue1>]
[<PARAM NAME = parameterName2 VALUE =
parameterValue2>]
...
[<PARAM NAME = parameterNamen VALUE =
parameterValuen>]
[HTML that will be displayed in the
absence of Java]
</APPLET>
DIK-020 Pemograman Berorientasi Objek (semester genap 2009/2010) 5/26/2010
www.math-usk.org/zahnur 5
Tag Applet HTML: Keyword Tag Applet HTML: Keyword
Tag Applet HTML: Contoh
1 /* mengakses parameter yang tersedia di tag HTML
*/
2 import java.awt.*;
3 import java.applet.*;
4 /*
5 <applet code="ParamDemo" width=300 height=100>
6 <param name="myParam" value="Hello world!">
7 </applet>
8 */
9 public class ParamDemo extends Applet {
10 public void paint(Graphics g) {
11 g.drawString(getParameter("myParam"), 80, 25);
12 }
13 }
Kesimpulan
• Definisi Applet
• Membuat Applet
– Meng-Extend class Applet
– Meng-Import package ini:
• java.applet
• java.awt
– Menggunakan tag applet html
Kesimpulan
• Method Applet
– Applet Life Cycle
1.init
2.start
3.stop
4.destroy
– Method paint
– Method showStatus
– Memainkan Audio Clips
1.getAudioClip
2.play atau loop
3.stop
Kesimpulan
• Tag Applet HTML
<APPLET
[CODEBASE = codebaseURL]
CODE = appletFile
[ATL = alternateText]
[NAME = appletInstanceName]
WIDTH = widthInPixels HEIGHT = heightInPixels
[ALIGN = alignment]
[VSPACE = vspaceInPixels] [HSPACE = hspaceInPixels]
>
[<PARAM NAME = parameterName1 VALUE = parameterValue1>]
[<PARAM NAME = parameterName2 VALUE = parameterValue2>]
...
[<PARAM NAME = parameterNamen VALUE = parameterValuen>]
[HTML that will be displayed in the absence of Java]
</APPLET>