Kamis, 17 Oktober 2019

Manajemen Layout Lanjutan


Assalamu'alaikum warahmatullahi wabarakatuh,
Pada postingan ini saya akan melanjutkan pembahasan sebelumnya tentang Manajemen Layout. Sebelumnya Anda bisa klik teks link berikut untuk melihat postingan-postingan sebelumnya :
 GUI
Berikut ini adalah Program Latihan Manajemen Layout yang akan kita bahas :
1.             Membuat Program frameAWT.java
Kode Program
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("Tittle Pilihan Buah");

          myFrame.add(labelPil,BorderLayout.NORTH);
          Panel myPanel = new Panel(new BorderLayout());
          Label labelBuah = new Label("Buah = ");
          myPanel.add(labelBuah,BorderLayout.WEST);
          Choice myChoice = new Choice();
          myChoice.add("Mangga");
          myChoice.add("Pisang");
          myChoice.add("Jeruk");
          myChoice.add("Apple");
          myChoice.add("Anggur");
          myChoice.add("Nangka");
          myFrame.add(myPanel,BorderLayout.SOUTH);
          myFrame.setSize (300,200);
          myPanel.add(myChoice,BorderLayout.EAST);
          myFrame.show();
   }
}
Simpan dengan nama frameAWT.java. Selanjutnya :
1.      CTRL+1 untuk mengkompile program java
2.      CTRL+2 untuk menjalankan program

Hasil Output Program

Pada program frameAWT.java baris kode program myFrame.setLayout(new BorderLayout());  menjelaskan bahwa frame dibuat menggunakan metode border layout yang menggunakan konsep arah mata angin untuk meletakkan posisi komponen objek yaitu NORTH, EAST, SOUTH, WEST dan CENTER.

2.             Membuat Program objekGUI.java
Kode Program
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", "Katolik", "Hindu", "Budha" };
       JComboBox cMBAgama = new JComboBox(NamaAgama);
       JLabel lHobby = new JLabel("Hobby                     : ");
       JCheckBox cBSepakBola = new JCheckBox("Sepakbola");
       JCheckBox cBBasket = new JCheckBox("Basket");
       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(cBBasket);
       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,85,120,20);
       cBSepakBola.setBounds(130,85,100,20);
       cBBasket.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();
}
}
Simpan dengan nama objekGUI.java selanjutnya :
1.      CTRL+1 untuk mengkompile program java
2.      CTRL+2 untuk menjalankan program

Hasil Output Program

Pada program diatas kita menggunakan kombinasi komponen objek GUI seperti label, textbox, radiobutton, combobox, checkbox dan button. Dari program diatas kita menggunakan metode None Layout  hal ini dapat kita lihat pada baris kode program setLayout(null); selain itu untuk mengatur posisi letak objek kita menggunakan kode program setBounds(column,row,width,height); misalnya pada baris kode program lNama.setBounds(10,10,120,20); kita menempatkan label nama pada kolom 10, baris ke 10, lebar 120 dan tinggi 20.

3.             Membuat Form Login
Kode Program
import javax.swing.*;
class GUI extends JFrame {
       JLabel lNama = new JLabel ("Username     : ");
       final JTextField fNama = new JTextField (10);
       JLabel lpassword = new JLabel ("Password     : ");
       final JTextField fpassword = new JTextField (10);
       JButton bTNSave = new JButton("OK");
       JButton bTNCancel = new JButton("Cancel");

public GUI() {
      setTitle("Login");
      setDefaultCloseOperation(3);
      setSize(350,200);
      ButtonGroup Group = new ButtonGroup();

      setLayout(null);
      add(lNama);
      add(fNama);
      add(lpassword);
      add(fpassword);
      add(bTNSave);
      add(bTNCancel);


      lNama.setBounds(10,10,120,20);
      fNama.setBounds(130,10,150,20);
      lpassword.setBounds(10,35,120,20);
      fpassword.setBounds(130,35,150,20);
      bTNSave.setBounds(50,70,100,20);
      bTNCancel.setBounds(160,70,100,20);
      setVisible(true);
}
}
class login {
       public static void main (String [] args){
              GUI G = new GUI();
}
}
Simpan dengan nama login.java selanjutnya :
1.      CTRL+1 untuk mengkompile program java
2.      CTRL+2 untuk menjalankan program

Hasil Output Program

Sama seperti program objekGUI.java diatas pada pembuatan form login kita menggunakan metode None Layout. Dengan menggunakan metode None Layout kita bisa bebas dalam meletakkan posisi objek sehingga dapat membuat tampilan yang diinginkan.

4.             Membuat MultiLayout
Kode Program
import java.awt.*;
import javax.swing.*;

class Mlayout extends JFrame{
   JPanel panel1 = new JPanel();
   JPanel panel2 = new JPanel();
   JPanel panel3 = new JPanel();
   JButton b0,b1,b2,b3,b4,b5,b6,b7,b8,b9,b10,b11;

public Mlayout(){
   setTitle("MULTILAYOUT");
   b0 = new JButton("0");
   b1 = new JButton("1");
   b2 = new JButton("2");
   b3 = new JButton("3");
   b4 = new JButton("4");
   b5 = new JButton("5");
   b6 = new JButton("6");
   b7 = new JButton("7");
   b8 = new JButton("8");
   b9 = new JButton("9");
   b10 = new JButton("10");
   b11 = new JButton("11");

   Container con = this.getContentPane();
   con.setLayout(new GridLayout(1,3));
   panel1.setLayout(new FlowLayout());
   panel1.add(b0);
   panel1.add(b1);
   panel1.add(b2);
   panel1.add(b3);

   panel2.setLayout(null);
   panel2.add(b4);
   panel2.add(b5);
   panel2.add(b6);
   panel2.add(b7);

   panel3.setLayout(new GridLayout(2,2));
   panel3.add(b8);
   panel3.add(b9);
   panel3.add(b10);
   panel3.add(b11);
   //panel3.setSize(150,150);

  // panel2.setSize(40,20);
   b4.setBounds(60,30,70,30);
   b5.setBounds(60,60,70,30);
   b6.setBounds(60,90,70,30);
   b7.setBounds(60,120,70,30);

   panel1.setBorder(BorderFactory.createTitledBorder("Flow Layout"));
   panel2.setBorder(BorderFactory.createTitledBorder("None Layout"));
   panel3.setBorder(BorderFactory.createTitledBorder("Grid Layout"));

   con.add(panel1);
   con.add(panel2);
   con.add(panel3);

   setSize(600,200);
   setVisible(true);
   setDefaultCloseOperation(EXIT_ON_CLOSE);
   }
}
   public class MultiLayout{
   public static void main(String[]args){
   Mlayout M = new Mlayout();
   }
}
Simpan dengan nama MultiLayout.java selanjutnya :
1.      CTRL+1 untuk mengkompile program java
2.      CTRL+2 untuk menjalankan program

Hasil Output Program

Pada program Multi Layout diatas kita menggabungkan lebih dari satu metode manajemen Layout. Untuk button 0 sampai dengan 1 kita menggunakan metode flow layout,  button 4 sampai dengan button 7 kita menggunakan metode none layout dan metode grid layout pada button 9 sampai button 11. panelx.setBorder(BorderFactory.createTitledBorder("xxx")); baris kode program tersebut di gunakan untuk membuat kotak atau grid untuk panel  dan memberikan judul dari grid panel tersebut. Kode program tersebut juga harus menggunakan kelas container agar dapat dijalankan (Container con = this.getContentPane(); ).

5.             Membuat Perulangan Button
Kode Program
import javax.swing.*;
class GUI extends JFrame {
 public GUI() {
 setTitle("Menampilkan...");


 setLayout(null);
 for (int i = 1; i <= 10; i++) {
       JButton b = new JButton("Button ");
       b.setBounds(50, i * 30, 100, 20);
       this.add(b);
    }

 setSize(225,380);
 setVisible(true);
 setDefaultCloseOperation(3);

}
 }

 class PerulanganButton{
 public static void main(String []args){
 GUI G = new GUI();
}
}
Simpan dengan nama PerulanganButton.java selanjutnya :
1.      CTRL+1 untuk mengkompile program java
2.      CTRL+2 untuk menjalankan program

Hasil Output Program

Pada program ini kita menggunakan fungsi perulangan “for" untuk membuat button sebanyak 10 button. Kode program for (int i = 1; i <= 10; i++) diatas digunakan untuk membuat perulangan sebanyak i dimana nilai i = 1 dan batas perulangan i  adalah 10, dan proses perulangan dilakukan dengan penambahan nilai i. Selanjutnya kode program JButton b = new JButton("Button"); digunakan untuk membuat button dan b.setBounds(50, i * 30, 100, 20); untuk menempatkan posisi button dimana i * 30 untuk membuat button sebanyak i dan menempatkannya di baris berikutnya dan this.add(b); untuk menampilkan button.


Sekian Penjelasan Saya Tentang Materi Latihan Manajemen Layout Java
Praktikum Berorientasi Objek II
Terimakasih dan Semoga Bermanfaat
----***----

Wassalamu’alaikum warahmatullahi wabarakatuh.

Tidak ada komentar:

Posting Komentar