Anda di halaman 1dari 9

1

PEMROGRAMAN WINDOW

Program yang dibuat selama ini adalah pemrograman pada level konsol. Java
sesungguhnya juga mendukung pemrograman windows. Salah satu mekanisme untuk
mengimplementasikannya adalah dengan menggunakan paket java.awt (Java Abstract Tool
Kit).

Contoh :
// nama berkas : testframe.java
import java.awt.*;
public class testframe extends Frame
{
public static void main(String[] args)
{
testframe frame1 = new testframe();
}

public testframe()
{
super("Jendela Frame Saya");
setSize(300,200);
show();
}
}

Hasil :

Frame adalah kelas dalam paket AWT yang mewujudkan jendela dengan judul dibagian
atas dan memungkinkan menu pull down dibuat. Tampilan dari frame akan berbeda jika
dijalankan pada sistem operasi Windows atau Linux. Untuk menutup jendela tekan CTRL C
pada jendela konsol.

KOMPONEN DALAM AWT


Segala tampilan pada sistem Window sesungguhnya didasarkan kelas Component. Pada
dasarnya komponen adalah segala sesuatu yang terlihat pada jendela, misalnya teks statis,
tombol, kotak cek dan sebagainya.

Komponen dapat dikelompokkan menjadi :


 Container
Merupakan wadah untuk komponen-komponen yang lain, misalnya Panel.
 Canvas
Seperti halnya dunia lukisan digunakan untuk menggambar apa saja.
 Komponen antarmuka grafis
Termasuk dalam kelompok ini yaitu tombol, menu pop-up dan kotak cek.
 Komponen penyusun jendela
Termasuk dalam hal ini jendela frame dan kotak dialog
Pemrograman JAVA
2

Hirarki dari komponen digambarkan sebagai berikut :

KOMPONEN BUTTON
Button merupakan kelas yang berguna untuk membuat tombol dalam suatu jendela.
Contoh :
// nama berkas : testtombol.java
import java.awt.*;
public class testtombol extends Frame
{
public static void main(String[] args)
{
testtombol tombol1 = new testtombol();
}

public testtombol()
{
super("Tombol Saya"); Digunakan untuk membuat sebuah panel
setSize(300,200);
Panel paneltombol = new Panel();
paneltombol.add(new Button("Perbesar"));
paneltombol.add(new Button("Keluar"));
add("South", paneltombol); Digunakan untuk membuat 2 buah tombol
show();
}
Digunakan untuk mengaitkan objek tombol ke panel
}

Hasil :

Pemrograman JAVA
3

Tabel nilai untuk menentukan letak panel dalam jendela :


NILAI KETERANGAN
South Letak di bawah
West Letak di kiri atas
North Letak di atas
East Letak di kanan atas

MENANGANI KEJADIAN
Program di atas belum menangani kejadian sama sekali misalnya ketika tombol Keluar di-
klik maka aplikasi segera diakhiri.
Penanganan kejadian dapat dilakukan dengan menggunakan paket java.awt.event. Objek
Window menggunakan metode bernama addWindowListener() sedangkan komponen
Button menggunakan metode bernama addActionListener().
Contoh :
// nama berkas : testtombol1.java
import java.awt.*;
import java.awt.event.*;
public class testtombol1 extends Frame
{
public static void main(String[] args)
{
testtombol1 tombol1 = new testtombol1();
}

public testtombol1()
{
super("Tombol Saya");
setSize(300,200);
Button tombolmaks = new Button("Perbesar");
Button tombolend = new Button("Keluar");

Panel paneltombol = new Panel();


paneltombol.add(tombolmaks);
paneltombol.add(tombolend);
add("South", paneltombol);

tombolmaks.addActionListener(new testtombol1.penangantombol());
tombolend.addActionListener(new testtombol1.penangantombol());

addWindowListener(new testtombol1.penangankejadian());
show();
}

class penangankejadian extends WindowAdapter


{
public void windowClosing (WindowEvent e)
{
System.exit(0);
}
}

class penangantombol implements ActionListener


{
public void actionPerformed(ActionEvent e)
Pemrograman JAVA
4

{
String s = e.getActionCommand();
if (s.equals("Perbesar"))
{
setSize(600,400);
}
else
if (s.equals("Keluar"))
{
System.exit(0);
}
}
}
}

FILE DIALOG
Adalah subkelas dari dialog yang menyediakan kemudahan dalam menampilkan daftar
berkas yang akan dibaca ataupun berkas untuk menyimpan data.
Contoh :
// nama berkas : dialog.java
import java.awt.*;
public class dialog extends Frame
{
public static void main(String[] args)
{
dialog aplikasi = new dialog();
}

public dialog()
{
super("Form Dialog");
setSize(400,150);
FileDialog fd = new FileDialog(this, "Buka Berkas :");
fd.show();
setTitle("File yang Anda buka : "+fd.getFile());
show();
}
}

Hasil :

Pemrograman JAVA
5

SETLAYOUT
Digunakan untuk mengatur tata letak komponen-komponen. AWT menyediakan 5 manajer
dasar untuk mengelola peletakan komponen, yaitu :
1. FlowLayout
Melakukan pengaturan komponen dengan urutan dari kiri ke kanan dan dari atas ke
bawah dengan melibatkan konstanta LEFT, RIGHT dan CENTER
2. GridLayout
Menggunakan bentuk kisi-kisi dengan ukuran yang sama untuk setiap komponen
3. BorderLayout
Menempatkan komponen dengan pendekatan arah mata angin
4. CardLayout
Menampilkan objek-objek seperti tumpukan kartu
5. GridBagLayout
Digunakan untuk meletakkan komponen secara bebas

LABEL
Merupakan komponen yang umum digunakan untuk menampilkan suatu string dan
umumnya bersifat tidak untuk diubah.
Contoh :
// nama berkas : label.java
import java.awt.*;
public class label extends Frame
{
public static void main(String[] args)
{
label aplikasi = new label();
}

public label()
{
super("Teks Label");
setSize(300,100);

Label t1 = new Label("Terimakasih", Label.LEFT);


Label t2 = new Label("Thank You", Label.CENTER);
Label t3 = new Label("Xie Xie", Label.RIGHT);

Panel plabel = new Panel();


plabel.setLayout(new GridLayout(3,1));
plabel.add(t1); 3 baris 1 kolom
plabel.add(t2);
plabel.add(t3);
add("North", plabel);
show();
}
}

Hasil :

Pemrograman JAVA
6

TEXTFIELD
Adalah kelas yang berguna untuk menciptakan obyek yang ditujukan untuk memasukkan
data satu baris.
Contoh :
// nama berkas : textfield.java
import java.awt.*;
import java.awt.event.*;

public class textfield extends Frame


{
Label info;
TextField f1, f2;
Button b;

public static void main(String[] args)


{
textfield aplikasi = new textfield();
}

public textfield()
{
super("Silahkan Anda Login :");
setSize(300,120);

Label t1 = new Label("Nama Pemakai :");


f1 = new TextField("", 10);
Label t2 = new Label("Password : ");
f2 = new TextField("", 10);
f2. setEchoChar('#');
b = new Button("Login");
info = new Label();

Panel p1 = new Panel();


p1.setLayout(new GridLayout(3,2));
p1.add(t1);
p1.add(f1);
p1.add(t2);
p1.add(f2);

Panel p2 = new Panel();


p2.setLayout(new GridLayout(1,2));
p2.add(b);
p2.add(info);
add("North", p1);
add("South", p2);
b.addActionListener(new textfield.penangantombol());
show();
}

class penangantombol implements ActionListener


{
public void actionPerformed(ActionEvent e)
{
String s = e.getActionCommand();
if (s.equals("Login"))
Pemrograman JAVA
7

{
String nama = f1.getText();
String pin = f2.getText();
if (nama.compareTo("Aditya") == 0 && pin.compareTo("123") == 0)
info.setText("Login berhasil..!");
else
info.setText("Login gagal...!");
}
}
}
}

Hasil :

TEXTAREA
Adalah kelas yang berguna untuk membuatbobjek yang dapat digunakan untuk
menampilkan data teks yang terdiri atas sejumlah baris.
Contoh :
// nama berkas : teksarea.java
import java.awt.*;
import java.awt.event.*;
import java.io.*;
public class teksarea extends Frame
{
TextArea tarea;
Button bsimpan, bmuat, bhapus;
String namaberkas = "Tarea.out";

public static void main(String[] args)


{
teksarea aplikasi = new teksarea();
}

public teksarea()
{
super("Aplikasi TextArea");
setSize(350,150);
tarea = new TextArea("Ketik teks disini...",5,30);
bsimpan = new Button("Simpan");
bmuat = new Button("Muat");
bhapus = new Button("Hapus");

Panel p1 = new Panel();


p1.add(tarea);

Panel p2 = new Panel();


p2.setLayout(new GridLayout(3,1));
Pemrograman JAVA
8

p2.add(bsimpan);
p2.add(bmuat);
p2.add(bhapus);

add("West", p1);
add("East", p2);

bsimpan.addActionListener(new teksarea.penangantombol());
bmuat.addActionListener(new teksarea.penangantombol());
bhapus.addActionListener(new teksarea.penangantombol());
show();
}

class penangantombol implements ActionListener


{
public void actionPerformed (ActionEvent e)
{
String s = e.getActionCommand();
if (s.equals("Simpan"))
{
try {
FileWriter keluaran = new FileWriter(namaberkas);
String isiteks = tarea.getText();
keluaran.write(isiteks);
keluaran.flush();
keluaran.close();
}
catch (IOException i)
{
System.err.println("Gagal menyimpan berkas...!");
System.exit(1);
}
tarea.setText ("Teks telah disimpan...");
}
else if (s.equals("Muat"))
{
try {
FileReader masukan = new FileReader(namaberkas);
BufferedReader streamMasukan = new BufferedReader(masukan);
String teks="";
while(true)
{
String data = streamMasukan.readLine();
if (data == null) break;
teks = teks+data+'\n';
}
masukan.close();
tarea.setText(teks);
}
catch (IOException i)
{
tarea.setText("Berkas tidak dapat dibaca...");
}
}
else if(s.equals("Hapus"))
Pemrograman JAVA
9

{
tarea.setText("");
}
}
}
}

Hasil :

Pemrograman JAVA

Anda mungkin juga menyukai