Senin, 30 Januari 2012

EVENT HANDLING

Event handling merupakan Event berguna untuk menangani interaksi user dengan program, misalnya user memilih sebuah menu dalam aplikasi MIDlet.Untuk menangani event perlu mengimplementasikan interface CommandListener dan atau ItemListener. CommandListener berfungsi untuk menangani jika user memilih Command tertentu sedangkan ItemListener berfungsi untuk menangani jika user mengubah nilai seperti misalnya mengubah pilihan pada ChoiceGroup.     
                            
Kode Program untuk membuat tampilan di atas adalah sbb:
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;

class CheckBoxHandling extends JFrame implements ItemListener {
private JTextField teks;
private JPanel panel;
private JCheckBox cb1, cb2, cb3;

public CheckBoxHandling() {
setTitle("Coba CheckBox Handling");
teks = new JTextField("Jenis Kelamin : Pilihan");
teks.setHorizontalAlignment(SwingConstants.CENTER);
panel = new JPanel(new FlowLayout());
cb1 = new JCheckBox("Pria");
cb2 = new JCheckBox("Wanita");
cb3 = new JCheckBox("Banci");

ButtonGroup group = new ButtonGroup();
group.add(cb1);
group.add(cb2);
group.add(cb3);
cb1.addItemListener(this);
cb2.addItemListener(this);
cb3.addItemListener(this);

setLayout(new BorderLayout());
add(teks, "North");
add(panel, "West");
panel.add(cb1);
panel.add(cb2);
panel.add(cb3);

pack();
setVisible(true);
setLocation(200,200);
setDefaultCloseOperation(EXIT_ON_CLOSE);
}

public void itemStateChanged(ItemEvent event) {
if(event.getSource()==cb1) {
if(event.getStateChange()==ItemEvent.SELECTED)
teks.setText("Jenis Kelamin : Pria");
}

if(event.getSource()==cb2) {
if(event.getStateChange()==ItemEvent.SELECTED)
teks.setText("Jenis Kelamin : Wanita");
}

if(event.getSource()==cb3) {
if(event.getStateChange()==ItemEvent.SELECTED)
teks.setText("Jenis Kelamin : Banci");
}
}
}
public class EventCheckBox {
public static void main (String[] args) {
new CheckBoxHandling();
}          
}

Ketika dijalankan, maka hasilnya sebagai berikut :














Keterangan :
1.      import java.awt.*  Untuk mengimport semua class yang ada pada package java.awt sehingga dapat menggunakan semua komponen yang ada pada package tersebut.
2.      import javax.swing.*  Berfungsi untuk mengimport semua yang ada pada package javax.swing agar dapat menggunakan semua class yang ada pada package tersebut.
3.     import java.awt.event.*  Berfungsi untuk mengimport semua class yang ada pada package java.awt.event agar dapat menggunakan semua komponen yang ada pada package tersebut.
4.  class CheckBoxHandling extends JFrame implements ItemListener  class dengan nama CheckBoxHandling yang mewarisi class JFrame dengan mengimplementasikan ItemListener.
5.      private JPanel panel Untuk deklaras objek dari class Jpanel.
6.      private JCheckBox cb1, cb2, cb3 Pendeklarasian objek dari class JcheckBox dengan nama cb1, cb2, cb3.
7.      public CheckBoxHandling()  Merupakan constructor dari class CheckBoxHandling.
8.      setTitle("Coba CheckBox Handling") Penggunaan method setTitle pada class JFrame yang berfungsi untuk memberikan judul “Coba CheckBox Handling pada frame.
9.      new JTextField("Jenis Kelamin  Pilihan"): Membuat objek baru JtextField dengan nama objek Jenis Kelamin : Pilihan (berdasarkan jenis kelamin yang di pilih).
10.  cb1 = new JCheckBox("Pria")  Membuat objek baru JcheckBox dengan nama objek cb1 (untuk membuat pilihan CheckBox Pria).
11.  cb2 = new JCheckBox("Wanita")  Membuat objek baru JcheckBox dengan nama objek cb2 (untuk membuat pilihan CheckBox Wanita).
12.  Cb3 = new JCheckBox("Banci") Membuat objek baru JcheckBox dengan nama objek cb3 (untuk membuat pilihan CheckBox Banci).
13.  setLayout (new BorderLayout ())  Membuat objek baru dari setLayout dengan memberi jenis method setLayout yaitu BorderLayout yang berfungsi untuk mengatur Layout.
14.  setVisible (true) Metode setVisible() merupakan metode yang diwariskan dari kelas java.awt.Window. Metode ini digunakan untuk memunculkan atau menyembunyikan window. Argumen yang dapat dimasukkan adalah true atau false.
15.   setDefaultCloseOperation()  menghandle kejadian saat tanda silang di pojok kanan atas pada window diklik.
16.     public class EventCheckBox {  Pembuatan class dengan nama class EventCheckBox.
17.   public static void main(String[] args)  Program utama sekaligus nama kelas. Ketika di run kan maka akan menampilkan hasil dari seluruh method yang ada dalm kelas tersebut.

MANAJEMEN LAYOUT

Teori
     Manajemen penggunaan komponen (manajemen layout) diperlukan untuk mengatur penempatan komponen di dalam frame agar bisa menghasilkan bentuk Interface yang menarik.
Method SetLayout() digunakan untuk mengatur jenis metode yang digunakan pada saat pemasangan komponen.

      1. Metode FlowLayout
           Metode FlowLayout menempatkan komponen di frame berdasarkan urutan komponen-komponen  yang ditempelkan ke frame. penyusunan di mulai dari kiri ke kanan dan dari atas kebawah. Dengan demikian urutan pemasukan komponen menjadi penting. Secara default  seluruh komponen yang ditambahkan dengan metode FlowLayout akan ditampilkan dengan rata tengah, namun metode FlowLayout memiliki konstanta LEFT,CENTER, dan RIGHT untuk mengatur perataan komponen yang diinginkan.

     2. Metode GridLayout
          Metode GridLayout akan membagi area layar menjadi sejumlah tempat dalam bentuk  matriks ukuran yang sama. Area layar dibagi dalam format baris dan kolom. setiap kali terjadi perubahan ukuran frame, ukuran setiap komponen juga akan berubah. Pada prinsipnya yang dipertahankan adlah jumlah baris dan kolom yang telah ditentukan.

     3. Metode BorderLayout
          Metode BorderLayout menggunakan konsep arah mata angin dalam memasang komponen. Class  BorderLayout menyediakan lima konstanta yang menyatakan arah mata angin, yaitu NORTH, EAST,SOUTH,WEST, Dan CENTER. Metode BorderLayout tidak memperhatikan urutan pemasangan komponen.

      4. Metode NoneLayout
          Metode NoneLayout tidak cukup fleksibel digunakan. Oleh karena itu harus mengatur lokasi tiap objek titik demi titik. tiap objeknya ditentukan oleh koordinat di dlam window. jika dilihat dari hal kerapian dan kebebasan mengatur tampilan sendiri, layout ini menempati peringkat teratas dari semua alternatif layout.
 
 
Contoh Program Manajemen Layout pada Java


import java.awt.*;
import javax.swing.*;

class BLayout extends JFrame {
JButton tombolSave, tombolEdit, tombolDelete,tombolOpen;
JLabel labelGambar;

public BLayout() {
setTitle("BOURDER LAYOUT");
tombolOpen = new JButton("OPEN");
tombolOpen.setMnemonic('O');
tombolSave = new JButton("SAVE");
tombolSave.setMnemonic('S');
tombolEdit = new JButton("EDIT");
tombolEdit.setMnemonic('E');
tombolDelete = new JButton("DELETE");
tombolDelete.setMnemonic('D');
labelGambar = new JLabel(new ImageIcon("Image/Satu.jpg"));
setLayout(new BorderLayout());
add(tombolOpen, "North");
add(tombolSave, "West");
add(tombolEdit, "Center");
add(tombolDelete, "East");
setSize(400,300);
setVisible(true);
setDefaultCloseOperation(EXIT_ON_CLOSE);
 }
}


public class CobaBorderLayout {
public static void main (String[] args) {
BLayout b=new BLayout();
 }
}
 ==========================================================================
import java.awt.*;
import javax.swing.*;

class FLayout extends JFrame {
JButton tombolSave, tombolEdit, tombolDelete,tombolOpen;

public FLayout() {
setTitle("FLOWLAYOUT");
tombolOpen = new JButton("OPEN");
tombolOpen.setMnemonic('O');
tombolSave = new JButton("SAVE");
tombolSave.setMnemonic('S');
tombolEdit = new JButton("EDIT");
tombolEdit.setMnemonic('E');
tombolDelete = new JButton("DELETE");
tombolDelete.setMnemonic('D');


setLayout(new FlowLayout());
add(tombolOpen);
add(tombolSave);
add(tombolEdit);
add(tombolDelete);


pack();
setVisible(true);
setDefaultCloseOperation(EXIT_ON_CLOSE);
 }
}


public class CobaFlowLayout {
public static void main (String[] args) {
FLayout f=new FLayout();
 }
}
===========================================================================
import java.awt.*;
import javax.swing.*;

class GLayout extends JFrame {
JButton tombolSave, tombolEdit, tombolDelete,tombolOpen, tombolCopy, tombolPaste;

public GLayout() {
setTitle("GRIDLAYOUT");
tombolOpen = new JButton("OPEN");
tombolOpen.setMnemonic('O');
tombolSave = new JButton("SAVE");
tombolSave.setMnemonic('S');
tombolEdit = new JButton("EDIT");
tombolEdit.setMnemonic('E');
tombolDelete = new JButton("DELETE");
tombolDelete.setMnemonic('D');
tombolCopy = new JButton("COPY");
tombolCopy.setMnemonic('C');
tombolPaste = new JButton("PASTE");
tombolPaste.setMnemonic('P');


setLayout(new GridLayout(3,2));
add(tombolOpen);
add(tombolSave);
add(tombolEdit);
add(tombolDelete);
add(tombolCopy);
add(tombolPaste);


pack();
setVisible(true);
setDefaultCloseOperation(EXIT_ON_CLOSE);
 }
}

public class CobaGridLayout {
public static void main (String[]args) {
GLayout g=new GLayout();
 }
}
==========================================================================
import java.awt.*;
import javax.swing.*;

class NLayout extends JFrame {
JButton tombolSave, tombolEdit, tombolDelete, tombolOpen;

public NLayout() {
setTitle("NONELAYOUT");
tombolOpen = new JButton("OPEN");
tombolOpen.setMnemonic('O');
tombolSave = new JButton("SAVE");
tombolSave.setMnemonic('S');
tombolEdit = new JButton("EDIT");
tombolEdit.setMnemonic('E');
tombolDelete = new JButton("DELETE");
tombolDelete.setMnemonic('D');


setLayout(null);
add(tombolOpen);
add(tombolSave);
add(tombolEdit);
add(tombolDelete);

tombolOpen.setBounds(10,10,150,20);
tombolSave.setBounds(150,15,150,20);
tombolEdit.setBounds(100,30,150,20);
tombolDelete.setBounds(40,50,150,20);

setSize(350,200);
setVisible(true);
setDefaultCloseOperation(EXIT_ON_CLOSE);
 }
}

public class CobaNullLayout {
public static void main (String[]args) {
NLayout n=new NLayout();
 }
}
===========================================================================
 import java.awt.*;
    public class frameAWT {
        public static void main(String[] args) {
        Frame myFrame=new Frame("Demo program AWT");
        myFrame.setLayout(new BorderLayout());
        Label labelPil=new Label("Title Pilihan Buah");


        myFrame.add(labelPil,BorderLayout.NORTH);
        Panel myPanel=new Panel(new BorderLayout());
        Label labelBuah=new Label("Buah= ");
        Choice myChoice=new Choice();
        myChoice.add("Mangga");
        myChoice.add("Pisang");
        myChoice.add("Jeruk");
        myChoice.add("Apel");
        myChoice.add("Anggur");
        myChoice.add("Nangka");
        myFrame.add(myPanel,BorderLayout.SOUTH);
        myFrame.setSize(300,200);
        myPanel.add(myChoice,BorderLayout.EAST);
        myFrame.show();
        }
    }
===========================================================================
import javax.swing.*;
class GUI extends JFrame {
    JLabel lNama = new JLabel("Nama Lengkap : ");
    final JTextField FNama =
    new JTextField(10);
    JLabel lJnsKlmn =
    new JLabel("Jenis Kelamin :");
    JRadioButton rBPria =
    new JRadioButton("Laki-laki");
    JRadioButton rBWanita =
    new JRadioButton("Perempuan");
    JLabel lAgama =
    new JLabel("Agama: ");
    String [] NamaAgama ={
    "Islam", "Kristen", "Katolok", "Hindu", "Budha"
    };
    JComboBox cMBAgama =
    new JComboBox(NamaAgama);
    JLabel lHobby =
    new JLabel ("Hobby : ");
    JCheckBox cBSepakbola =
    new JCheckBox("Sepakbola");

    JCheckBox cBBolaBasket =
    new JCheckBox("BolaBasket");
    JButton bTNSave =
    new JButton("OK");

public GUI() {
    setTitle("Mencoba Kombinasi Komponen GUI");
    setDefaultCloseOperation(3);
    setSize(350,200);
    ButtonGroup Group = new ButtonGroup();
    Group.add(rBPria);
    Group.add(rBWanita);

    setLayout(null);
    add(lNama);
    add(FNama);
    add(lJnsKlmn);
    add(rBPria);
    add(rBWanita);
    add(lAgama);
    add(cMBAgama);
    add(lHobby);
    add(cBSepakbola);
    add(cBBolaBasket);
    add(bTNSave);

    lNama.setBounds (10,10,120,20);
    FNama.setBounds (130,10,150,20);
    lJnsKlmn.setBounds (10,35,120,20);
    rBPria.setBounds (130,35,100,20);
    rBWanita.setBounds (230,35,100,20);
    lAgama.setBounds (10,60,150,20);
    cMBAgama.setBounds (130,60,120,20);
    lHobby.setBounds (10,10,120,20);
    cBSepakbola.setBounds (130,85,150,20);
    cBBolaBasket.setBounds (230,85,150,20);
    bTNSave.setBounds (100,130,120,20);
    FNama.setBounds (130,10,150,20);
    setVisible (true);
    }
}
class ObjekGUI {
public static void main (String []args){
GUI G = new GUI();
    }
}
 
 =============================================================================
Tugas :
import java.awt.*;
import javax.swing.*;

class layout extends JFrame {

JButton Btna,Btnb, Btnc, Btnd, Btne,Btnf, Btng, Btnh, Btni, Btnj, Btnk, Btnl ;
JLabel lNama,lNama2,lNama3;
JPanel P1,P2,P3;

public layout() {
setTitle("MULTI LAYOUT");
JLabel lNama= new JLabel("Flow Layout" );
JButton Btna=new JButton ("0");
JButton Btnb=new JButton ("1");
JButton Btnc=new JButton ("2");
JButton Btnd=new JButton ("3");

JLabel lNama2= new JLabel("None Layout" );
JButton Btne=new JButton ("4");
JButton Btnf=new JButton ("5");
JButton Btng=new JButton ("6");
JButton Btnh=new JButton ("7");

JLabel lNama3= new JLabel("Grid Layout" );
JButton Btni=new JButton ("8");
JButton Btnj=new JButton ("9");
JButton Btnk=new JButton ("10");
JButton Btnl=new JButton ("11");

P1 = new JPanel();
P2 = new JPanel();
P3 = new JPanel();

setLayout(null);
add(lNama);
add(lNama2);
add(lNama3);
add(P1);
add(P2);
add(P3);

lNama.setBounds(15,10,100,20);
lNama2.setBounds(220,10,100,20);
lNama3.setBounds(320,10,100,20);
P1.setBounds(5,30,200,40);
P2.setBounds(215,30,200,100);
P3.setBounds(320,30,200,150);

P1.setLayout(new FlowLayout());
P1.add(Btna);
P1.add(Btnb);
P1.add(Btnc);
P1.add(Btnd);

P2.setLayout(null);
P2.add(Btne);
P2.add(Btnf);
P2.add(Btng);
P2.add(Btnh);

Btne.setBounds(5,10,70,20);
Btnf.setBounds(5,30,70,20);
Btng.setBounds(5,50,70,20);
Btnh.setBounds(5,70,70,20);

P3.setLayout(new GridLayout(2,1));
P3.add(Btni);
P3.add(Btnj);
P3.add(Btnk);
P3.add(Btnl);
P3.setSize(100,100);

setSize(500,200);
setDefaultCloseOperation(3);

}
}
public class MultyLayout{
public static void main(String[] args) {
layout l = new layout();
}
}

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();} 
}