Anda di halaman 1dari 11

PROGRAM STUDI TEKNIK INFORMATIKA

FAKULTAS ILMU KOMPUTER


UNIVERSITAS MUSLIM INDONESIA

Modul 3. APPLET
1. TUJUAN INSTRUKSIONAL KHUSUS

a.

Mahasiswa dapat membuat aplikasi menggunakan class Applet/JApplet

b.

Mahasiswa dapat menggunakan method pada Class Applet

2. DASAR TEORI
Applets adalah satu dari fitur yang paling menarik dalam java. Applet merupakan program
yang dapat dijalankan melalui web browser dan tipe spesial dari program java yang
dieksekusi melalui internet. Secara khusus berjalan pada suatu web browser seperti
Netscape Navigator, Mozilla, atau Microsoft Internet Explorer. Jika dibandingkan dengan
aplikasi Java yang normal, tidak diijinkan mengakses applet pada komputer yang mana
dijalankan untuk alasan keamanan. Ada dua langkah dalam penulisan program Applet:
a. Menuliskan source code java menggunakan Class Applet atau JApplet sebagai superclass
dan menambah package Applet ke dalam subclass yaitu import java.applet.*;
Contoh applet sederhana yang menampilkan "Hello world!":
import java.awt.*;
// package Class Graphics
import java.applet.*; // package Class Applet
public class AppletDemo extends Applet {
public void paint(Graphics g) {
g.drawString("Hello world!", 80, 25);
}
}

Method paint() bertanggung jawab untuk menggambar grafis. Argumen atau parameter
metode ini adalah instans dari kelas Graphics. Adapun method umum digunakan pada
kelas Graphics sebegai berikut:
Tabel 3.1 Method Graphics

Method Applet

Kegunaan

drawString(String str, int x, int y)

menggambar string tertentu

drawRect(int x, int y, int width, int

menggambar persegi panjang

height)

dengan

lebar

dan

tinggi

tertentu.
fillRect(int x, int y, int width, int

mengisi

height)

dengan warna default dan

persegi

panjang

lebar dan tinggi tertentu.


drawOval(int x, int y, int width, int

menggambar

height)

lebar dan tinggi tertentu.

Modul Praktikum Pemrogram Java Lanjut 2016

27

oval

dengan

PROGRAM STUDI TEKNIK INFORMATIKA


FAKULTAS ILMU KOMPUTER
UNIVERSITAS MUSLIM INDONESIA

Method Applet

Kegunaan

fillOval(int x, int y, int width, int

mengisi oval dengan warna

height)

default dan lebar dan tinggi


tertentu.

drawLine(int x1, int y1, int x2, int menarik garis antara titik-titik
y2)

(x1, y1) dan (x2, y2).

drawImage(Image

img,

int

x,

int

y, menggambar gambar tertentu

ImageObserver observer)
drawArc(int x, int y, int width, int menggambar busur lingkaran
height, int startAngle, int arcAngle)

atau elips

fillArc(int x, int y, int width, int mengisi busur lingkaran atau


height, int startAngle, int arcAngle)

elips

setColor(Color c)

mengatur

grafis

warna

tertentu
setFont(Font font)

mengatur grafis font tertentu

b. Menuliskan script html berisi tag Applet sehingga aplikasi Applet dapat berjalan melalui
browser. (Sumber:J. E N I )
Sintak: <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 dsiplayed in the absence of Java]
</APPLET>

</HTML>

Tabel 3.2 Applet HTML Tags (Sumber:J. E N I )

CODEBASE
Directory dimana class applet diletakkan. Untuk dokumen HTML, directory URL sesuai
dengan setting awalnya/defaultnya.
CODE
Modul Praktikum Pemrogram Java Lanjut 2016

28

PROGRAM STUDI TEKNIK INFORMATIKA


FAKULTAS ILMU KOMPUTER
UNIVERSITAS MUSLIM INDONESIA

Nama file yang berisi kode applet applet. Dengan atau tanpa nama ekstensi .java atau

.class .

ALT
Text ditampilkan jika browser mengerti applet tags tapi applet tidak dapat dieksekusi
secara langsung. Mungkin terjadi jika Javanya disabled.
NAME
Nama dari applet, diigunakan untuk memungkinkan applets yang lain untuk
berkomunikasi dengan applet ini dengan menunjukkan suatu applet berdasarkan
namanya.
WIDTH, HEIGHT
Width dan height dari window applet. Dinyatakan dalam pixel.
ALIGN
Alignment atau pengaturan posisi dari applet. satu diantara "left", "right", "top",
"bottom", "middle", "baseline", "texttop", "absmiddle", atau "absbottom". Peletakan
posisi secara Default tergantung pada lingkungan."top" posisi atas dari applet
diratakan dengan item tertinggi dalam baris yang ada. "bottom", baseline posisi
bawah dari applet diratakan dengan bawah dari content lain dalam baris yang sama.
"middle" tengah dari applet diratakan dengan bawah dari content yang lain dalam
baris yang sama.
"texttop" posisi atas dari applet diratakan dengan posisi atas dari applet diratakan
dengan posisi tertinggi dari posisi atas pada baris yang sama.
"absmiddle" tengah dari applet diratakan dengan vertical middle dari content lain
pada baris yang sama.
"absbottom" posisi bawah dari applet diratakan dengan posisi bawah dari content
lain dalam baris yang sama.
VSPACE, HSPACE
Spasi diatas dan dibawah (VSPACE) dan pada sisi (HSPACE) dari applet..
PARAM NAME, VALUE
Untuk mengelompokkan parameter yang dapat menampilkan applet; applet dapat
meminta method getParameter(String paramName).
Contoh:
<-- masukkan bagian ini dalam kode html misal Applet.html ->
<html>
<applet code="AppletDemo" width=300 height=100>
</applet>
</html>

c. Setelah penulisan kode program Applet, selanjutnya kompilasi dan menjalankan atau
memulai eksekusi program melalui command prompt atau terminal.
Sintaks: appletviewer <java filename>
Contoh:
C:\Users\...>javac AppletDemo.java
C:\Users\...>appletviewer Applet.html

Modul Praktikum Pemrogram Java Lanjut 2016

29

PROGRAM STUDI TEKNIK INFORMATIKA


FAKULTAS ILMU KOMPUTER
UNIVERSITAS MUSLIM INDONESIA

Tabel 3.3 Method Applet

Method Applet

init

Keterangan
method yang dipanggil pertama kali yang sebenarnya berisi
permintaan pertama ketika applet di load.

start

method ini meminta dokumen HTML yang ditampilkan applet setiap


waktu. Eksekusi ringkasan dengan method ini dilakukan ketika applet
ditampilkan kembali.

stop

Ketika web browser meninggalkan dokumen HTML applet, method ini


dipanggil

untuk

menginformasikan

applet

bahwa

dia

harus

menghentikan proses eksekusinya.

destroy

method ini dipanggil ketika applet perlu dihapus dari memory dan
Method stop selalu dipanggil sebelum method ini diminta untuk
dijalankan.

paint

Class Applet menurunkannya dari class induknya yaitu class

Component, dan meminta output applet setiap waktu yang diperlukan


untuk dapat digambar kembali.

ShowStatus

Applet memiliki window status, dimana memberi informasi tentang apa

Method

yang sebenarnya dilakukan applet. Jika ingin memberi output ke


window status, secara sederhana memanggil method showStatus.

d. Memainkan Audio Clips. Applets menyediakan layanan untuk memainkan file audio.
Memainkan audio clips dalam sebuah applet melalui dua langkah dasar :
1. Dapatkan

audio

clip

menggunakan

method

getAudioClip(getCodeBase(),

namafile.wav) dimana getCodeBase() digunakan untuk membangun path ke file lain


atau folder yang berada di lokasi yang sama dengan kelas yang sedang berjalan atau
mendapatkan base URL.
2. Memainkan audio clip, menggunakan method play() atau loop() pada objek audio clip.
Method play() untuk memainkan audio satu kali mengingat loop() berulang pada audio
clip dan berhenti hanya ketika method stop() dipanggil.
Contoh Kode program untuk memutar audioclip sebagai berikut:
import java.applet.Applet;
import java.applet.AudioClip;
import java.awt.Graphics;
public class AudioApplets extends Applet {
AudioClip ac;
public void init() {
try { // getCodeBase()=BASE URL dan namafilelagu="musik.wav"
ac = getAudioClip(getCodeBase(), "musik.wav");//sambung
ac.loop();
}
catch
Modul Praktikum Pemrogram Java(Exception
Lanjut 2016 e) {
30
System.out.println(e);
}
}
public void stop() {

PROGRAM STUDI TEKNIK INFORMATIKA


FAKULTAS ILMU KOMPUTER
UNIVERSITAS MUSLIM INDONESIA

//lanjutan
ac.loop();
} catch (Exception e) {
System.out.println(e);
}
}
public void stop() {
ac.stop();
}
public void paint(Graphics g) {
g.drawString("BASE URL anda : "+getCodeBase() , 80, 80);
g.drawString("Taruhlah file lagu sesuai alamat Base URL" , 80, 125);
g.drawString("Putar musik!", 80, 165);
}
}

3. PERSIAPAN PRAKTIKUM
a. Instalasi Lingkungan Pengembang Aplikasi yaitu Java Development Kit (JDK)
dan IDE Netbeans.
b. Pembuatan File java
Klik menu File kemudian pilih New File, akan muncul tampilan sebagai berikut :

1. Pada Categories : pilih Java dan Projects : Applet atau JApplet. klik next maka akan
muncul tampilan sebagai berikut :

Modul Praktikum Pemrogram Java Lanjut 2016

31

PROGRAM STUDI TEKNIK INFORMATIKA


FAKULTAS ILMU KOMPUTER
UNIVERSITAS MUSLIM INDONESIA

2. Tulis nama Applet atau JApplet pada Class Name, jika ingin membuat package maka
isi nama paket pada bagian Package (opsional) kemudian Finish maka akan muncul
tampilan sebagai berikut :

4. PELAKSANAAN PRAKTIKUM
1. Percobaan : Membuat Project dan Package
Buatlah project bernama PraktekJavaL3 pada direktori bernama NIM_ANDA
(kelanjutan praktikum2) Contoh:
Nama Direktori
: 13020140001 (NIM ANDA)
Nama Project
: PraktekJavaL3
Nama Package
: javaa.applets
Modul Praktikum Pemrogram Java Lanjut 2016

32

PROGRAM STUDI TEKNIK INFORMATIKA


FAKULTAS ILMU KOMPUTER
UNIVERSITAS MUSLIM INDONESIA

2. Percobaan : Membuat program menggunakan Class Applet


/* namafile: AppletDemo.java */
package javaa.applets;
import java.applet.Applet;
import java.awt.Graphics;
public class AppletDemo extends Applet {
public void paint(Graphics g) {
g.drawString("Praktikum ke-3 Pemrog. Java", 80, 25);
g.drawString("NAMA_ANDA (NIM_ANDA)", 80, 50);
showStatus("Belajar Java applet");
}
}

3. Percobaan : Membuat program menggunakan Class JApplet


/* namafile: JAppletDemo.java */
package javaa.applets;
import java.awt.Graphics;
import javax.swing.JApplet; //package JApplet
public class JAppletDemo extends JApplet {
public void paint(Graphics g) {
g.drawString("Praktikum ke-3 Pemrog. Java", 80, 25);
g.drawString("NAMA_ANDA (NIM_ANDA)", 80, 50);
showStatus("Belajar Java applet");
}
}

4. Percobaan : Penggunaan Class Graphics untuk pembuatan grafis/gambar


/* namafile: Belajar.java */
//package javaa.applets;
import java.awt.*;
import java.applet.*;
public class Belajar extends Applet {
public void paint(Graphics g) {
Font jnsHuruf = new Font("Courier New", Font.BOLD, 36);
g.setFont(jnsHuruf); //mengubah jenis huruf
g.setColor(Color.red); //mengubah warna
g.drawString("corat coret", 10, 40); //menulis di applet
g.setColor(Color.black);
//menggambar di applet
g.drawLine(10, 50, 100, 70); //menggambar garis
//menggambar segi empat
g.drawRect(10,
Modul Praktikum Pemrogram
Java Lanjut 201680, 50, 50); 33
g.setColor(Color.orange);
g.fillRect(100, 80, 100, 50);

PROGRAM STUDI TEKNIK INFORMATIKA


FAKULTAS ILMU KOMPUTER
UNIVERSITAS MUSLIM INDONESIA

/* lanjutan namafile: Belajar.java */


g.drawRect(10, 80, 50, 50);
g.setColor(Color.orange);
g.fillRect(100, 80, 100, 50);
g.setColor(Color.black);
g.drawRoundRect(10, 150, 50, 50, 25, 25);
g.setColor(new Color(123, 177, 75));
g.fillRoundRect(100, 150, 50, 100, 25, 25);
g.setColor(Color.black);
}
}
//menggambar oval/lingkaran

5. Percobaang.drawOval(10,
: Menjalankan 290,
applet
class
melalui browser dan command
50,
50);
prompt
g.setColor(Color.blue);

g.fillOval(100,
290, -
100, 50);
<!-- namafile:
belajar.html
<HTML>

g.setColor(Color.black);
<BODY>
//menggambar
Mari kitalengkung
belajar menggunakan applet

g.drawArc(10, 360, 150, 50, 60, 200);


<APPLET code="Belajar.class" width=350 height=200></APPLET>
g.fillArc(200, 360, 100, 100, 150, -280);
</BODY>
g.setFont(new Font("Comic Sans MS", Font.ITALIC, 25));
</HTML>
g.drawString("tulis menulis", 10, 450);

6. Percobaang.setColor(Color.black);
: Menampilkan posisi teks berada tengah aplikasi Applet
/* namafile: TampilTengah.java */
package javaa.applets;
//menggambar polygon
import java.awt.*;
int titikX[] = {450, 470,
import javax.swing.JApplet;
350, 425};
public class TampilTengah extends
int titikY[] = {120, 200,
250,public
230}; void paint(Graphics g)

580, 520, 600, 460, 400, 420,


JApplet {
180, 270, 350, 330, 400, 300,
{

Font
f = new Font("Arial",
Font.BOLD,
36);
g.drawPolygon(titikX,
titikY,
10);
FontMetrics fm = getFontMetrics(f);
g.fillPolygon(titikX,
titikY, 5);
g.setFont(f);
g.setColor(Color.gray);
String teks = "Teks ini tampil ditengah";
int
xpos = (this.size().width
- fm.stringWidth(teks))/2;
//menggambar
kotak 3D
int ypos = (this.size().height) / 2;
for
(int i = 0; i <=
10; i++)
{
g.drawString(teks,
xpos,
ypos);
g.drawRect(xpos, ypos - fm.getAscent(),
g.draw3DRect(10 + i, 480 + i, 80 - i * 2, 50 - i * 2,
fm.stringWidth(teks), fm.getHeight());//sambung
true);
g.setFont(new Font("TimesRoman", Font.PLAIN, 12));
Modul Praktikum Pemrogram
Java Lanjut 2016
34
}
g.drawString("Tinggi teks " + (fm.getAscent() +
}
fm.getDescent())
+ " pixel", xpos, ypos + 30);

PROGRAM STUDI TEKNIK INFORMATIKA


FAKULTAS ILMU KOMPUTER
UNIVERSITAS MUSLIM INDONESIA

/*lanjutan

namafile: TampilTengah.java */

g.setFont(new Font("TimesRoman", Font.PLAIN, 12));


g.drawString("Tinggi teks " + (fm.getAscent() +
fm.getDescent())
+ " pixel", xpos, ypos + 30);
g.drawString("Lebar teks " + fm.stringWidth(teks) + "
pixel", xpos, ypos + 50);
g.drawString("Jenis huruf " + f.getFamily(), xpos, ypos +
70);
g.drawString("Style huruf " + f.getStyle(), xpos, ypos +
90);
g.drawString("Ukuran huruf " + f.getSize(), xpos, ypos +
110);
}
}

7. Percobaan : Penggunaan Class SimpleDateFormat untuk format

Tanggal
/* namafile: JamDigital.java */
package javaa.applets;
import java.applet.Applet;
import java.awt.*;
import java.text.SimpleDateFormat;
import java.util.Date;
public class JamDigital extends Applet implements Runnable {
SimpleDateFormat df = new SimpleDateFormat("dd/MM/yyyy
hh:mm:ss");
Font huruf = new Font("Comic Sans MS", Font.BOLD, 24);
Date tgl;
Thread jam;
public void init() {
setFont(huruf);
}
public void start() {
if (jam == null) {
jam = new Thread(this);
jam.start();
}
}
public void stop() {
if (jam != null) {
jam.stop();
jam = null;
}
} //sambung
public void run() {

Modul Praktikum Pemrogram


Java(true)
Lanjut 2016
while
{

tgl = new Date();


repaint();
try {

35

PROGRAM STUDI TEKNIK INFORMATIKA


FAKULTAS ILMU KOMPUTER
UNIVERSITAS MUSLIM INDONESIA

/* namafile: JamDigital.java */
//lanjutan
public void run() {
while (true) {
tgl = new Date();
repaint();
try {
jam.sleep(1000);
} catch (InterruptedException e) {
}
}
}
public void paint(Graphics g) {
g.drawString(df.format(tgl).toString(), 10, 50);
}
}

5. LATIHAN
1. Modifikasi kode program percobaan 4 (gambarkan oval, lengkung, polygon
dan 3D) dengan menggunakan Objek Graphics g sebagai parameter dari
method paint !
//menggambar oval/lingkaran
g.drawOval(10, 290, 50, 50);
g.setColor(Color.blue);
g.fillOval(100, 290, 100, 50);
g.setColor(Color.black);
//menggambar lengkung
g.drawArc(10, 360, 150, 50, 60, 200);
g.fillArc(200, 360, 100, 100, 150, -280);
g.setFont(new Font("Comic Sans MS", Font.ITALIC, 25));
g.drawString("tulis menulis", 10, 450);
g.setColor(Color.black);
//menggambar polygon
int titikX[] = {450, 470, 580, 520, 600, 460, 400,
420, 350, 425};
int titikY[] = {120, 200, 180, 270, 350, 330, 400, 300,
250, 230};
g.drawPolygon(titikX, titikY, 10);
g.fillPolygon(titikX, titikY, 5);
g.setColor(Color.gray);//sambung
//menggambar kotak 3D
for (int i = 0; i <= 10; i++) {
g.draw3DRect(10 + i, 480 + i, 80 - i * 2, 50 - i * 2, true);
}

Modul Praktikum Pemrogram Java Lanjut 2016

36

PROGRAM STUDI TEKNIK INFORMATIKA


FAKULTAS ILMU KOMPUTER
UNIVERSITAS MUSLIM INDONESIA

2. Tulis dan eksekusi kode program untuk memutar audioclip (lihat pada teori)!
6. TUGAS
1. Buatlah dua program java yang menerapkan Applet class dan JApplet class (selain
yang ada pada praktikum dan contoh)!
2. Buatlah Program yang mengatur posisi teks berada di kiri dan kanan!
3. Apa kegunaan method berikut :
a) setBackground()

i)

getDescent()

b) setFont()

j) getFamily()

c) setColor()

k) getStyle()

d) drawString()

l)

e) drawLine()

m) start() pada objek jam

f) stringWidth()

n) stop() pada objek jam

g) getHeight()

o) sleep() pada objek jam

h) getAscent()

p) format()

getSize()

4. Apa perbedaan antara:


a) Metode drawrect() dengan fillrect()
b) Metode drawrect() dengan fillrect()
c) Metode drawroundrect() dengan fillroundrect()
d) Metode drawrect() dengan fillrect()
e) Metode drawoval() dengan filloval()
f) Metode drawarc() dengan fillarc()
g) Metode drawpolygon() dengan fillpolygon()

Modul Praktikum Pemrogram Java Lanjut 2016

37

Anda mungkin juga menyukai