09/06/15

Membuat Window Atau Frame Menggunakan Program Java

Membuat Window Atau Frame Menggunakan Program Java_

Membuat Window Atau Frame Menggunakan Program Java - 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 :

Membuat Window Atau Frame Menggunakan Program Java 1_

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

Hirarki dari komponen digambarkan sebagai berikut :

Membuat Window Atau Frame Menggunakan Program Java 2_



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");
setSize(300,200);
Panel paneltombol = new Panel();
paneltombol.add(new Button("Perbesar"));
paneltombol.add(new Button("Keluar"));
add("South", paneltombol);
show();
}
}
Hasil :

Membuat Window Atau Frame Menggunakan Program 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)
{
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 :

Membuat Window Atau Frame Menggunakan Program Java 4_


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);
plabel.add(t2);
plabel.add(t3);
add("North", plabel);
show();
}
}
Hasil :


Membuat Window Atau Frame Menggunakan Program Java 5_


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"))
{
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 :


Membuat Window Atau Frame Menggunakan Program Java 6_


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));
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"))
{
tarea.setText("");
}
}
}
}
Hasil :

Membuat Window Atau Frame Menggunakan Program Java 7_


CHECKBOX

Adalah komponen yang biasa digunakan untuk memilih salah satu pilihan diantara dua kemungkinan.

Contoh :
// nama berkas : kotakcek.java
import java.awt.*;
import java.awt.event.*;
public class kotakcek extends Frame
{
Checkbox cb1, cb2, cb3;
TextArea tarea;
public static void main(String[] args)
{
kotakcek aplikasi = new kotakcek();
}
public kotakcek()
{
super("Aplikasi Checkbox");
setSize(400,120);
cb1 = new Checkbox("Java");
cb2 = new Checkbox("C++");
cb3 = new Checkbox("PHP");
tarea = new TextArea("",3,35, TextArea.SCROLLBARS_NONE);
tarea.setEditable(false);
Panel p1 = new Panel();
p1.setLayout (new GridLayout(3,1));
p1.add(cb1);
p1.add(cb2);
p1.add(cb3);
Panel p2 = new Panel();
p2.add(tarea);
add("West", p1);
add("East", p2);
cb1.addItemListener(new kotakcek.penanganitem());
cb2.addItemListener(new kotakcek.penanganitem());
cb3.addItemListener(new kotakcek.penanganitem());
show();
}
public void cetak()
{
String scb1, scb2, scb3;
scb1 = "Pilihan Java : "+cb1.getState();
scb2 = "Pilihan C++ : "+cb2.getState();
scb3 = "Pilihan PHP : "+cb3.getState();
tarea.setText(scb1+"\n"+scb2+"\n"+scb3);
}
class penanganitem implements ItemListener
{
public void itemStateChanged(ItemEvent e)
{
Object o = e.getItem();
if (o.equals("Java"))
cetak();
else if (o.equals("C++"))
cetak();
else if (o.equals("PHP"))
cetak();
}
}
}
Hasil :

Membuat Window Atau Frame Menggunakan Program Java 8_


CHECKBOX GROUP

Adalah wadah yang mengelompokkan sejumlah kotak cek yang mempunyai sifat hanya satu kotak cek dalam keadaan terpilih atau dalam lingkungan Windows dikenal dengan isitilah radio button

Contoh :
// nama berkas : cbgrup.java
import java.awt.*;
import java.awt.event.*;
public class cbgrup extends Frame
{
Checkbox cb1, cb2, cb3;
CheckboxGroup cbg;
TextArea tarea;
public static void main(String[] args)
{
cbgrup aplikasi = new cbgrup();
}
public cbgrup()
{
super("Aplikasi CheckboxGroup");
setSize(450,120);
addWindowListener (new cbgrup.keluar());
Label teks1 = new Label("Pilih Jurusan Kuliah :");
cbg = new CheckboxGroup();
cb1 = new Checkbox("Sistem Informasi", cbg, true);
cb2 = new Checkbox("Teknik Informatika", cbg, false);
cb3 = new Checkbox("Manajemen Informatika", cbg, false);
tarea = new TextArea("",3,35, TextArea.SCROLLBARS_NONE);
tarea.setEditable(false);
Panel p1 = new Panel();
p1.setLayout (new GridLayout(4,1));
p1.add(teks1);
p1.add(cb1);
p1.add(cb2);
p1.add(cb3);
Panel p2 = new Panel();
p2.add(tarea);
add("West", p1);
add("East", p2);
cb1.addItemListener(new cbgrup.penanganitem());
cb2.addItemListener(new cbgrup.penanganitem());
cb3.addItemListener(new cbgrup.penanganitem());
show();
}
public void cetak()
{
tarea.setText("Anda memilih jurusan : \n"+cbg.getSelectedCheckbox().getLabel());
}
class keluar extends WindowAdapter
{
public void windowClosing(WindowEvent e)
{
System.exit(0);
}
}
class penanganitem implements ItemListener
{
public void itemStateChanged(ItemEvent e)
{
Object o = e.getItem();
if (o.equals("Sistem Informasi"))
cetak();
else if (o.equals("Teknik Informatika"))
cetak();
else if (o.equals("Manajemen Informatika"))
cetak();
}
}
}
Hasil :
  
Membuat Window Atau Frame Menggunakan Program Java 9_



CHOICE

Merupakan salah satu kelas yang memungkinkan untuk membuat objek yang digunakan untuk memilih sebuah pilihan berdasarkan sejumlah pilihan dengan mekanisme pop-up atau dalam lingkungan Windows dikenal dengan istilah combo box

Contoh :
// nama berkas : kombo.java
import java.awt.*;
import java.awt.event.*;
public class kombo extends Frame
{
Choice pilih;
CheckboxGroup cbg;
TextArea tarea;
public static void main(String[] args)
{
kombo aplikasi = new kombo();
}
public kombo()
{
super("Aplikasi Choice");
setSize(400,120);
addWindowListener (new kombo.keluar());
Label teks1 = new Label("Pilih Jurusan Kuliah :");
pilih = new Choice();
pilih.add("Sistem Informasi");
pilih.add("Manajemen Informatika");
pilih.add("Teknik Informatika");
pilih.add("Teknik Komputer");
pilih.addItemListener(new kombo.penanganitem());
tarea = new TextArea("",3,40, TextArea.SCROLLBARS_NONE);
tarea.setEditable(false);
Panel p1 = new Panel();
p1.setLayout(new GridLayout(1,1));
p1.add(teks1);
p1.add(pilih);
Panel p2 = new Panel();
p2.setLayout(new GridLayout(1,1));
p2.add(tarea);
add("West", p1);
add("South", p2);
show();
}
class keluar extends WindowAdapter
{
public void windowClosing(WindowEvent e)
{
System.exit(0);
}
}
class penanganitem implements ItemListener
{
public void itemStateChanged(ItemEvent e)
{
tarea.setText("Anda Memilih Jurusan : \n"+ pilih.getSelectedItem());
}
}
}
Hasil :

Membuat Window Atau Frame Menggunakan Program Java 10_


LIST

Adalah kelas yang digunakan untuk membuat objek yang menyediakan pemilihan sebuah item atau beberapa item dari sejumlah item. Komponen yang ditampilkan dilengkapi dengan penggulung.

Contoh :
// nama berkas : teslist.java
import java.awt.*;
import java.awt.event.*;
public class testlist extends Frame
{
List daftar;
TextArea tarea;
public static void main(String[] args)
{
testlist aplikasi = new testlist();
}
public testlist()
{
super("Aplikasi List");
setSize(250,250);
addWindowListener (new testlist.keluar());
Label teks1 = new Label("Pilih Jurusan Kuliah :");
daftar = new List(5,false);
daftar.add("Sistem Informasi");
daftar.add("Manajemen Informatika");
daftar.add("Teknik Informatika");
daftar.add("Teknik Komputer");
tarea = new TextArea("",3,35, TextArea.SCROLLBARS_NONE);
tarea.setEditable(false);
Panel p1 = new Panel();
p1.setLayout (new GridLayout(3,1));
p1.add(teks1);
p1.add(daftar);
p1.add(tarea);
add("West", p1);
daftar.addItemListener(new testlist.penanganitem());
show();
}
class keluar extends WindowAdapter
{
public void windowClosing(WindowEvent e)
{
System.exit(0);
}
}
class penanganitem implements ItemListener
{
public void itemStateChanged(ItemEvent e)
{
tarea.setText("Anda memilih jurusan :\n "+daftar.getSelectedItem());
}
}
}
Hasil :

Membuat Window Atau Frame Menggunakan Program Java 11_

Jika program dapat memilih lebih dari satu item, maka ubah perintah daftar = new List(6,false) menjadi TRUE dan getSelectedItem() menjadi getSelectedItems().


SCROLLBAR

Adalah kelas yang bermanfaat untuk membuat batang penggulung.

Contoh :
// nama berkas : scroll.java
import java.awt.*;
import java.awt.event.*;
public class scroll extends Frame
{
Scrollbar sb1, sb2, sb3;
TextArea tarea;
public static void main(String[] args)
{
scroll aplikasi = new scroll();
}
public scroll()
{
super("Aplikasi ScrollBar");
setSize(400,200);
addWindowListener (new scroll.keluar());
sb1 = new Scrollbar(Scrollbar.VERTICAL,0,0,0,10);
sb2 = new Scrollbar(Scrollbar.HORIZONTAL,0,0,0,10);
sb3 = new Scrollbar(Scrollbar.HORIZONTAL,0,0,0,10);
Label t1 = new Label("Volume");
Label t2 = new Label("Bass");
Label t3 = new Label("Treble");
Label t4 = new Label("Hasil pilihan anda : ");
tarea = new TextArea("",3,35, TextArea.SCROLLBARS_NONE);
tarea.setEditable(false);
Panel p1 = new Panel();
p1.add(t1);
p1.add(sb1);
p1.add(t2);
p1.add(sb2);
p1.add(t3);
p1.add(sb3);
Panel p2 = new Panel();
p2.setLayout (new GridLayout(2,1));
p2.add(t4);
p2.add(tarea);
add("North", p1);
add("South", p2);
sb1.addAdjustmentListener(new scroll.atur());
sb2.addAdjustmentListener(new scroll.atur());
sb3.addAdjustmentListener(new scroll.atur());
show();
}
class keluar extends WindowAdapter
{
public void windowClosing(WindowEvent e)
{
System.exit(0);
}
}
class atur implements AdjustmentListener
{
public void adjustmentValueChanged(AdjustmentEvent e)
{
String hasil = "Volume : "+sb1.getValue() +"\n"+
"Bass : "+sb2.getValue() +"\n"+
"Treble : "+sb3.getValue();
tarea.setText(hasil);
}
}
}
Hasil :

Membuat Window Atau Frame Menggunakan Program Java 12_


Formulir Kontak

Nama

Email *

Pesan *