Anda di halaman 1dari 17

Modul Pelatihan java Swing

Asep Komarudin

Membuat Desain Dalam desain disini kita akan coba untuk menggabungkan beberapa komponen swing kedalam sebuah form.Pada saat kita mendsain sebauh tampilan kita tes kode kita langkah demi langkah. 1.Kita buat sebuah frame public class DesainTampilan extends JFrame{ public DesainTampilan() { setTitle("Contoh desain"); setLocation(300, 100); setSize(300, 150); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setVisible(true); } /** * @param args the command line arguments */ public static void main(String[] args) { // TODO code application logic here new DesainTampilan(); } }

aasseepp@gmail.com

Page 1

Modul Pelatihan java Swing

Asep Komarudin

Penjelasn program public class DesainTampilan extends JFrame Pernyataan ini menunjukan bahwa class DesainTampilan merupakan kelas turunan dari kelas Jframe jadi kelas ini memiliki atribut atribut yang dimiliki jFrame. public DesainTampilan() { setTitle("Contoh desain"); setLocation(300, 100); setSize(300, 150); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setVisible(true); } Public desaintampilan() merupakan konstruktor dari kelas DesainTampilan, perlu diingat tentang batasan dari konstruktor,konstruktor akan otomatis terpanggil pada saat kita memenggil classnya. Settitle() digunakan untuk membuat judul frame setLocation() digunakan untuk menempatkan posisi frame dari posisi kiri dan atas setSize() digunakan untuk mebuat ukuran frame yang terdiri dari panjang dan tinggi. setdefaultCloseoperation(JFrame.EXIT_ON_CLOSE) digunakan untuk mengakhiri jalannya program ketika tombol exit di klik.bila program tersebut dihilangkan maka pada saat frame ditutup program tetap berjalan. setVisible(true) digunakan untuk menampilkan frame.

public static void main(String[] args) { Merupakan kode utama agar program dapat dijalankan DesainTampilan dt=new DesainTampilan(); aasseepp@gmail.com Page 2

Modul Pelatihan java Swing


Proses pembentukan objek memeanggil konstruktornya. dari keals

Asep Komarudin
DesainTampilan.yang otomatis akan

Menambahkan Jlabel
public class DesainTampilan extends JFrame{ JPanel panel=new JPanel(); JLabel labelNim=new JLabel("NIM"); public DesainTampilan() { setTitle("Contoh desain"); setLocation(300, 100); setSize(300, 150); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setVisible(true); } public void tambahKomponen(){ getContentPane().setLayout(null); getContentPane().add(panel); panel.setBounds(0, 0, 300, 150); panel.setLayout(null); panel.add(labelNim); labelNim.setBounds(10, 10, 70, 20); } /** * @param args the command line arguments */ public static void main(String[] args) { // TODO code application logic here

aasseepp@gmail.com

Page 3

Modul Pelatihan java Swing


DesainTampilan dt=new DesainTampilan(); dt.tambahKomponen(); } }

Asep Komarudin

Bagian yang berwarna merah merupakan perubahan yang dilakukan dari program sebelumnya. Penjelasn program: JPanel panel=new Jpanel(); JLabel labelNim=new JLabel("NIM"); Membuat objek Jpanel dengan nama panel denga text kosong yang digunakan untuk meletakan komponen komponen swing. Membentuk objek Jlabel denga nama labelNim dan text NIM public void tambahKomponen(){ getContentPane().setLayout(null); getContentPane().add(panel); panel.setBounds(0, 0, 300, 150); panel.setLayout(null); panel.add(labelNim); labelNim.setBounds(10, 10, 70, 20);

aasseepp@gmail.com

Page 4

Modul Pelatihan java Swing


}

Asep Komarudin

Metode public void tambahKomponen() digunakan untuk meletakan komponen swing yang kita butuhkan getContentPane().setlayout(null) digunakan untuk mengatur tataletak komponen dalam frame , layout null berarti koordinat komponen dalam frame harus ditentukan sendiri. getContentPane().add(panel) perintiah yang digunakan untuk menambahkan objek Jlabel kedalam frame panel.setBounds(0, 0, 300, 150) Karena pada program dias kita mengunakan set layout(null) maka kita membaut ukuran frame dengan manula sesuai keinginan kita disini saya membaut panel darisis kiri jaraknya kosong dan dari atas jaraknya kosong dengan ukuran sama denan ukuran frame.Kenapa kita mengunakan Panel,tujuannya untuk memudahkan kita merubah rubah,isalkan kita ingin menambahkan warna background dan lainsebagainya. panel.setLayout(null) kode ini kita gunakan fungsinya sama denga set layout diatas artinya kita menentukan letak komponen sendiri. panel.add(labelNim) kode ini kita gunakan untuk memasukan objek Jlabel kedalam panel labelNim.setBounds(10, 10, 70, 20) setelah kita masukan maka kita atur letaknya dimana. dt.tambahKomponen() kode ini kita gunakan untuk memanggil metode yang kita buat sebelumya suapaya komponen yang kita buat ditampilakn delayar.

Menambahkan JtextField
public class DesainTampilan extends JFrame{ JPanel panel=new JPanel(); JLabel labelNim=new JLabel("NIM"); JTextField textNim=new JTextField(20); public DesainTampilan() { setTitle("Contoh desain"); setLocation(300, 100);

aasseepp@gmail.com

Page 5

Modul Pelatihan java Swing


setSize(300, 150); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setVisible(true); } public void tambahKomponen(){ getContentPane().setLayout(null); getContentPane().add(panel); panel.setBounds(0, 0, 300, 150); panel.setLayout(null); panel.add(labelNim); panel.add(textNim); labelNim.setBounds(10, 10, 70, 20); textNim.setBounds(75, 10, 100, 20); } /** * @param args the command line arguments */ public static void main(String[] args) { // TODO code application logic here DesainTampilan dt=new DesainTampilan(); dt.tambahKomponen(); } }

Asep Komarudin

aasseepp@gmail.com

Page 6

Modul Pelatihan java Swing

Asep Komarudin

Kode yang berwarna merah adalah perubahan dari kode sebelumnya Penjelasan program: JTextField textNim=new JTextField(20); Kode ini kita guakan untuk membentuk objek Jtextfield yang digunakan untuk menampung inputan nim dengan panjang karakter 20 panel.add(textNim); Kode ini dibuaat untuk memasukan komponen textfield kedalam panel textNim.setBounds(75, 10, 100, 20); Kode ini dibuat untuk membuat letak dan ukuran jTextField secara manual didalam Jpanel

Menambahkan Jbutton
public class DesainTampilan extends JFrame{ JPanel panel=new JPanel(); JLabel labelNim=new JLabel("NIM"); JTextField textNim=new JTextField(20); JButton btnCari=new JButton("Cari"); public DesainTampilan() { setTitle("Contoh desain"); setLocation(300, 100); aasseepp@gmail.com Page 7

Modul Pelatihan java Swing


setSize(300, 150); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setVisible(true); } public void tambahKomponen(){ getContentPane().setLayout(null); getContentPane().add(panel); panel.setBounds(0, 0, 300, 150); panel.setLayout(null); panel.add(labelNim); panel.add(textNim); panel.add(btnCari); labelNim.setBounds(10, 10, 70, 20); textNim.setBounds(75, 10, 100, 20); btnCari.setBounds(180, 10, 95, 20); } /** * @param args the command line arguments */ public static void main(String[] args) { // TODO code application logic here DesainTampilan dt=new DesainTampilan(); dt.tambahKomponen(); } }

Asep Komarudin

aasseepp@gmail.com

Page 8

Modul Pelatihan java Swing

Asep Komarudin

Kode yang berwarana merah adalah perubahan dari kode sebelumnya Penjelasan Program: penjelasan program sama saja dengan yag diatas selkarang kita tambahkan lagi kodenya: public class DesainTampilan extends JFrame{ JPanel panel=new JPanel(); JLabel labelNim=new JLabel("NIM"); JLabel labelNama=new JLabel("Nama"); JLabel labelKelas=new JLabel("Kelas"); JTextField textNim=new JTextField(20); JTextField textnama=new JTextField(50); JButton btnCari=new JButton("Cari"); public DesainTampilan() { setTitle("Contoh desain"); setLocation(300, 100); setSize(300, 150); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setVisible(true); } public void tambahKomponen(){ aasseepp@gmail.com Page 9

Modul Pelatihan java Swing


getContentPane().setLayout(null); getContentPane().add(panel); panel.setBounds(0, 0, 300, 150); panel.setLayout(null); panel.add(labelNim); panel.add(labelNama); panel.add(labelKelas); panel.add(textNim); panel.add(textnama); panel.add(btnCari); labelNim.setBounds(10, 10, 70, 20); labelNama.setBounds(10, 35, 70, 20); labelKelas.setBounds(10, 60, 70, 20); textNim.setBounds(75, 10, 100, 20); textnama.setBounds(75, 35, 200, 20); btnCari.setBounds(180, 10, 95, 20); } /** * @param args the command line arguments */ public static void main(String[] args) { // TODO code application logic here DesainTampilan dt=new DesainTampilan(); dt.tambahKomponen(); } } aasseepp@gmail.com Page 10

Asep Komarudin

Modul Pelatihan java Swing

Asep Komarudin

Tambahkan JradioButton
public class DesainTampilan extends JFrame{ JPanel panel=new JPanel(); JLabel labelNim=new JLabel("NIM"); JLabel labelNama=new JLabel("Nama"); JLabel labelKelas=new JLabel("Kelas"); JTextField textNim=new JTextField(20); JTextField textnama=new JTextField(50); JButton btnCari=new JButton("Cari"); JRadioButton kelasA=new JRadioButton("A"); JRadioButton kelasB=new JRadioButton("B"); JRadioButton kelasC=new JRadioButton("C"); ButtonGroup grupkelas=new ButtonGroup(); public DesainTampilan() { setTitle("Contoh desain"); setLocation(300, 100); setSize(300, 150); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setVisible(true); }

aasseepp@gmail.com

Page 11

Modul Pelatihan java Swing


public void tambahKomponen(){ getContentPane().setLayout(null); getContentPane().add(panel); panel.setBounds(0, 0, 300, 150); panel.setLayout(null); panel.add(labelNim); panel.add(labelNama); panel.add(labelKelas); panel.add(textNim); panel.add(textnama); panel.add(btnCari); panel.add(kelasA); panel.add(kelasB); panel.add(kelasC); labelNim.setBounds(10, 10, 70, 20); labelNama.setBounds(10, 35, 70, 20); labelKelas.setBounds(10, 60, 70, 20); textNim.setBounds(75, 10, 100, 20); textnama.setBounds(75, 35, 200, 20); btnCari.setBounds(180, 10, 95, 20); kelasA.setBounds(75, 60, 40, 20); kelasB.setBounds(130, 60, 40, 20); kelasC.setBounds(185, 60, 40, 20); grupkelas.add(kelasA); grupkelas.add(kelasB); grupkelas.add(kelasC); aasseepp@gmail.com Page 12

Asep Komarudin

Modul Pelatihan java Swing


} /** * @param args the command line arguments */ public static void main(String[] args) { // TODO code application logic here DesainTampilan dt=new DesainTampilan(); dt.tambahKomponen(); } }

Asep Komarudin

Yang berwarna merah adalah penambahan kode dari sebelumnya. Penjelasan kode: JRadioButton kelasA=new JRadioButton("A"); JRadioButton kelasB=new JRadioButton("B"); JRadioButton kelasC=new JRadioButton("C"); Kode diatas menunjukan bahwa kita membuat tiga buah objek radioButton dengan nama kelasA,KelasB,dan kelasC dan textnya A,B dan C ButtonGroup grupkelas=new ButtonGroup(); kode ini merupakan objek yang digunakan untuk menyatakan semua objek JradioButton sehingga akan terpilih satu diantara tiga jRadioButton.

aasseepp@gmail.com

Page 13

Modul Pelatihan java Swing


kelasA.setBounds(75, 60, 40, 20); kelasB.setBounds(130, 60, 40, 20); kelasC.setBounds(185, 60, 40, 20);

Asep Komarudin

Digunakan untuk menambahkan dan menatur posisi masing masing objek dalam panel grupkelas.add(kelasA); grupkelas.add(kelasB); grupkelas.add(kelasC); Kode ini adalah cara untuk menyatukan ketiga objek radioButton diatas

menambahkan JcomboBox
public class DesainTampilan extends JFrame{ JPanel panel=new JPanel(); JLabel labelNim=new JLabel("NIM"); JLabel labelNama=new JLabel("Nama"); JLabel labelKelas=new JLabel("Kelas"); JTextField textNim=new JTextField(20); JTextField textnama=new JTextField(50); JButton btnCari=new JButton("Cari"); JRadioButton kelasA=new JRadioButton("A"); JRadioButton kelasB=new JRadioButton("B"); JRadioButton kelasC=new JRadioButton("C"); ButtonGroup grupkelas=new ButtonGroup(); JLabel labelKelompok=new JLabel("Klompok"); String jenisKelompok []={"1","2","3","4","5","6","7"}; JComboBox jcbKelompok=new JComboBox(jenisKelompok);

aasseepp@gmail.com

Page 14

Modul Pelatihan java Swing


public DesainTampilan() { setTitle("Contoh desain"); setLocation(300, 100); setSize(300, 150); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setVisible(true); } public void tambahKomponen(){ getContentPane().setLayout(null); getContentPane().add(panel); panel.setBounds(0, 0, 300, 150); panel.setLayout(null); panel.add(labelNim); panel.add(labelNama); panel.add(labelKelas); panel.add(textNim); panel.add(textnama); panel.add(btnCari); panel.add(kelasA); panel.add(kelasB); panel.add(kelasC); panel.add(jcbKelompok); panel.add(labelKelompok); labelNim.setBounds(10, 10, 70, 20); labelNama.setBounds(10, 35, 70, 20); labelKelas.setBounds(10, 60, 70, 20); aasseepp@gmail.com Page 15

Asep Komarudin

Modul Pelatihan java Swing


textNim.setBounds(75, 10, 100, 20); textnama.setBounds(75, 35, 200, 20); btnCari.setBounds(180, 10, 95, 20); kelasA.setBounds(75, 60, 40, 20); kelasB.setBounds(130, 60, 40, 20); kelasC.setBounds(185, 60, 40, 20); grupkelas.add(kelasA); grupkelas.add(kelasB); grupkelas.add(kelasC); labelKelompok.setBounds(10, 85, 70, 20); jcbKelompok.setBounds(75, 85, 70, 20); } /** * @param args the command line arguments */ public static void main(String[] args) { // TODO code application logic here DesainTampilan dt=new DesainTampilan(); dt.tambahKomponen(); } }

Asep Komarudin

aasseepp@gmail.com

Page 16

Modul Pelatihan java Swing

Asep Komarudin

aasseepp@gmail.com

Page 17