Jumat, 21 Desember 2012

PERTEMUAN VIIII




MANAJEMEN LAYOUT

Manajemen pemasangan komponen (manajemen layout) diperlukan untuk mengatur penempatan komponen didalam frame yang bias menghasilkan bentuk interface yang menarik. Kita boleh mengkombinasikan beberapa metode agar pemasangan komponen menjadi lebih baik dan mudah. Method setLayout() digunakan untuk mengatur jenis method yang digunakan pada saat pemasangan komponen

A.  Metode FlowLayout

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

B.   Metode GridLayout

Metode GridLayout akan membagi area layar menjadi sejumlah tempat dalam bentuk matriks ukuran yang sama. Setiap kali terjadi perubahan ukuran frame, ukuran setiap komponen juga akan berubah. Pada prinsipnya yang dipertahankan adalah jumlah baris dan kolom yang telah detentukan.

C.   Metode BorderLayout

Metode BorderLayout menggunakan konsep arah mata angin dalam memasangkan komponen. Class BorderLayout menyediakan lima konstanta yang menyatakan arah mata angin, yaitu NORTH, EAST, SOUTH, WEST dan CENTER.

D.  Metode NoneLayout

Metode NoneLayout tidak cukup fleksibel digunakan. Oleh karena itu harus mengatur lokasi tiap objek titik demi titik. Tiap objeknya ditentukan oleh koordinasi di dalam window

Contoh Program:
1.    Membuat program CobaFlowLayout.java
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();
   }
  }





2.    Membuat program CobaGridLayout.java

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

3.    Membuat program CobaBorderLayout.java

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

class BLayout extends JFrame {
   JButton tombolSave, tombolEdit, tombolDelete, tombolOpen;
   JLabel labelGambar;
   public BLayout() {
            setTitle ("Border 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");
            tombolOpen.setMnemonic('D');
            labelGambar = new JLabel(new ImageIcon("Image / Satu.jpg"));
            setLayout(new BorderLayout());
            add(tombolOpen, "North");
            add(tombolSave, "West");
            add(labelGambar, "Center");
            add(tombolEdit, "East");
            add(tombolDelete, "South");
            setSize(400, 300);
            setVisible(true);
            setDefaultCloseOperation(EXIT_ON_CLOSE);
   }
 }

 public class cobaBorderLayout{
    public static void main (String [] args) {
       BLayout b = new BLayout ();
    }
 }

4.    Membuat program CobaNoneLayout.java

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