Senin, 30 Januari 2012

JAVA GUI

JAVA GUI

Java menyediakan API untuk membuat aplikasi GUI (Graphic User Interface). GUI merupakan suatu aplikasi pada Java  yang berbasis grafik. Pertimbangan untuk menggunakan aplikasi GUI ini antara lain adalah tampilan yang lebih menarik dan kemudahan dalam penggunaannya. Tampilan yang atraktif akan menarik orang untuk menggunakannya, sedangkan dari segi kemudahan akan membuat konsumen merasa nyaman dalam menggunakan program yang telah dibuat. Ada dua package yang disediakan Java dalam pembuatan aplikasi GUI, yaitu AWT dan Swing.

1.    AWT (Abstract Windowing Toolkit)

AWT (Abstract Windowing Toolkit) merupakan paket yang disedikan oleh Java dalam pembuatan aplikasi berbasis grafik yang bersifat platform. AWT terdiri dari banyak widget grafik yang dapat ditambahkan dan diatur dalam tampilan seperti butons, checkbox, radiobutton, menu, list, canvas, textfield, scroolpane, panel.
Semua komponen UI non-menu memiliki kelas yang diturunkan dari kelas java.awt.Component. Sedangakan komponen menu diturunkan dari java.awt.ComponentMenu. Komponen yang berfungsi sebagai kontainer, yaitu yang dapat mengandung komponen lain, diturunkan dari kelas java.awt.Container. Container sendiri diturunkan dari java.awt.Component.
a.    Kekurangan AWT
·      Bersifat heavyweight.
·      Bersifat Opaque (tidak transparan)

b.    Kelebihan AWT
·      Didukung oleh browser kuno maupun baru, karena paket ini telah diimplementasikan sejak lama.

Beberapa Contoh Kompenen AWT yang berada dalam di dalam package javax.awt

Komponen
Keterangan
java.awt.Button
Tombol yang jika ditekan akan mengerjakan instruksi tertentu
java.awt.CheckBox
Tombol berbentuk kotak yang dapat di-check atau n-check
java.awt.Choice
Menu yang terdiri dari beberapa pilihan
java.awt.Label
Untuk meletakkan teks statis dan tidak dapat diedit
java.awt.List
Untuk menyajikan beberapa pilihan teks dalam satu daftar yang dapat di-scroll (gulung)
java.awt.Panel
Menyediakan space untuk meletakkan komponen atau panel lainnya
java.awt.Scrollbar
Untuk memilih nilai dalam range tertentu
java.awt.TextArea
Untuk menampilkan teks multi-line dan dapat diedit.

 
 
 
Program JAVA GUI

 import javax.swing.*;
class GUI extends JFrame {// kelas GUI merupakan turunan dari JFrame
    JLabel LNim = new JLabel("NIM    :");//membuat & memanggil JLabel baru dengan objek LNim
    final JTextField FNim= new JTextField(20);
    // merupakan modifier yg berbentuk konstanta untuk membuat & memanggil JTextfield baru dengan nama objek FNim
    JLabel LNama = new JLabel("Nama :");//membuat & memanggil JLabel baru dengan objek LNama
    final JTextField FNama= new JTextField(30);
    // merupakan modifier yg berbentuk konstanta untuk membuat & memanggil JTextfield baru dengan nama objek FNama
    JButton BTnOK= new JButton("OK");//membuat & memanggil JButton baru dengan objek BTnOK
    JButton BTnkeluar= new JButton("Cancel");//membuat & memanggil JButton baru dengan objek BTnkeluar
    public GUI() {
            setTitle("Coba-Coba");// mengatur & membuat judul pada frame Coba-Coba
            setDefaultCloseOperation(3);
            setSize(350,350);//mengatur ukuran pada tampilan frame dengan lebar 350 dan panjang 300

            setLayout(null);//Mengatur tampilan pada frame
            add(LNim);//menambah objek LNim pada frame
            add(FNim);//menambah objek FNim pada frame
            add(LNama );//menambah objek LNama pada frame
            add(FNama);//menambah objek FNama pada frame
            add(BTnOK);//menambah objek BTnOK pada frame
            add(BTnkeluar);//menambah objek BTnkeluar pada frame

            LNim.setBounds(10,10,120,20);//mengatur bentuk bondaries objek LNim dengan ukuran (10,10,120,20)
            FNim.setBounds(60,10,120,20);//mengatur bentuk bondaries objek FNim dengan ukuran (60,10,120,20)
            LNama.setBounds(10,40,120,20);//mengatur bentuk bondaries objek LNama dengan ukuran (10,40,120,20)
            FNama.setBounds(60,40,190,20);//mengatur bentuk bondaries objek FNama dengan ukuran (60,40,190,20)
            BTnOK.setBounds(200,130,90,20);//mengatur bentuk bondaries objek BTnOK dengan ukuran (100,130,90,20)
            BTnkeluar.setBounds(100,130,90,20);//mengatur bentuk bondaries objek BTnkeluar dengan ukuran (100,130,90,20)
            FNim.setBounds(60,10,120,20);
            //meletakkan posisi kursor awal pada Objek FNim & mengatur bentuk bondaries objek FNim dengan ukuran (60,10,120,20)
            setVisible(true);//mengatur tampilan frame dalam keadaan aktif atau true

    }
}

class ObGUI {//merupakan nama kelas yaitu ObGUI
        public static void main(String[] arqs) {//Fungsi Utama yang harus ada di class utama
                GUI G=new GUI();//membuat objek dengan nama G dari GUI
            }
    }



Contoh program AwtPertama.Java

import java.awt.*; 
public  class  AwtPertama  extends  Frame 
{ 
AwtPertama() 
{ 
super("Coba AWT"); 
setSize(300,200); 
show(); 
} 
public  static  void  main(String[]  args) 
  { 
AwtPertama  obj=new  AwtPertama(); 
} 
}




2.    SWING
SWING adalah package lainnya dalam JAVA yang dapat digunakan untuk membuat aplikasi berbasis grafik. Swing mempunyai beberapa komponen untuk pembuatan aplikasi GUI antara lain button, checkbox, textfield, radio button, progress bar, tabel, menu, dan text area.
Komponen swing bersifat lightweight, yaitu komponen dapat ditampilkan sama pada sistem operasi multi-platform. Semua komponen pada Swing diawali dengan huruf “J”, misalnnya Jbutton, JtextArea, Jlabel. Semua class pada Java Swing diambil dari package javax.swing.
Beberapa Contoh Kompenen Swing yang berada dalam di dalam package javax.swing

Component
Keterangan
javax.swing.JButton
Push-Button atau tombol yang jika ditekan akan mengerjakan instruksi tertentu
javax.swing.JRadioButton
Button untuk menampilkan keadaaan select atau deselect
javax.swing.JCheckBox
Tombol berbentuk kotak yang dapat di-check atau n-check
javax.swing.JLabel
Untuk meletakkan teks  atau image
javax.swing.JTextField
Untuk mengedit satu baris teks
javax.swing.JTextArea
Untuk menampilkan teks multi-line dan dapat diedit oleh user.
javax.swing.JMenuBar
Untuk menapilkan menu dalam frame
java.swing.JTabel
Menampilkan dan mengedit tabel



Contoh program SimpleFrame.Java
import javax.swing.JFrame;
public class SimpleFrame extends JFrame {
            public SimpleFrame(){
                        super("Frame title");
                        setSize(300,100);
                        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
                        setVisible(true);
            }
  public static void main(String[] args) {
      SimpleFrame sf = new SimpleFrame();
  }
}


3.    SWT
Standard Widget Toolkit (SWT) adalah toolkit bersaing yang awalnya dikembangkan oleh IBM dan kini dikelola oleh komunitas Eclipse. Implementasi SWT yang memiliki lebih banyak kesamaan dengan komponen kelas AWT. SWT merupakan pemecahan masalah yang terdapat pada rangka kerja AWT dan Swing.
Blok Penyusun Suatu Aplikasi SWT
Ada beberapa blok penyusun aplikasi SWT, yaitu :
1.      Display
Display bertugas untuk mengatur perulangan event (dari keyboard atau mouse) dan mengatur komunikasi antara thread UI dan thread lainnya.
2.      Shell
Shell adalah jendela di mana aplikasi berjalan. Setiap aplikasi SWT memiliki paling tidak satu Display dan satu atau lebih instansi Shell.
3.      Kumpulan Widget

 
import java.awt.*;
 

public class contohguiawt{ 


public static void main(String[]args){
 

    Frame myFrame=new Frame("Contoh Program AWT");
 
    Label aLabel=new Label("SelamatBelajar Java");
 
    myFrame.add(aLabel);
 
    myFrame.setSize(200,150);
 
    myFrame.show();
 

}


}


Frame swing

n  Memiliki 2 constructor, yaitu :
n  JFrame()
n  JFrame(String)            à frame’s title
n  Method yang adadalam class iniadalah :
n  setTitle(String)            à frame’s title
n  setSize(int, int)            à width & height (pixel)
n  Default frame ketikadibuatadalah invisible, makasetelahselesaidiset, selanjutnya frame didisplaykandengan method :
n  show()                         atau
setVisible(true





n  Normal behaviordari frame ketikaditekantombol close adalah“keep running the application”
n  Untukmerubahnya, digunakan method setDefaultCloseOperation() denganpilihanargumendanoperasisbb :
n  EXIT_ON_CLOSE    àKeluardari program
n  DISPOSE_ON_CLOSE    à  Close & Dispose frame, tetapi
                                                            aplikasitetapberjalan
n  DO_NOTHING_ON_CLOSE à  Frame tetapterbuka&aplikasi                                         tetapberjalan
n  HIDE_ON_CLOSE   à  Frame ditutup&aplikasitetap
                                                            berjalan
n  Jika frame tsbbertindaksebagai user interface utama, makaperilaku yang umumnyadiharapkanadalah EXIT_ON_CLOSE


Frame awt

Pada  program  diatasdilakukan  import  terhadapjava.awt.*,  karenapada  program  diatas
menggunakankomponen  AWT.  Untukmembentuksebuah  window,  harusdibuatsebuahobjek
dari  class  Frame,  program  diatasobjek  win  terbentukdari  class  Frame.  Sedangankanmetode
setSize,   digunakanuntukmengaturukuran   window,    danmetode    show   digunakanuntuk
menampilkan window. 



import java.awt.*; 
public class AwtPertama
{ 
public static void main(String[] args) 
{Frame win=new Frame(" Coba AWT"); 
win.setSize(300,200); 
win.show();} 
}

Tidak ada komentar:

Posting Komentar